Skip to main content
Version: Next

SQLiteDriver

SQLiteDriver

SQLite-based persistent job queue manager for CommandKit tasks.

  • Jobs are recoverable on restart (pending jobs from the past are run on startup)
  • Job data is persisted in SQLite
  • Supports both cron and date-based schedules (uses cron-parser for cron)

Example

import { SQLiteDriver } from '@commandkit/tasks/sqlite';
import { setDriver } from '@commandkit/tasks';

const driver = new SQLiteDriver('./tasks.db');
setDriver(driver);
Signature
class SQLiteDriver implements TaskDriver {
constructor(dbPath: = './commandkit-tasks.db')
destroy() => ;
create(task: TaskData) => Promise<string>;
delete(identifier: string) => Promise<void>;
setTaskRunner(runner: TaskRunner) => Promise<void>;
}

constructor

method
(dbPath: = './commandkit-tasks.db') => SQLiteDriver

Create a new SQLiteDriver instance.

destroy

method
() =>

Destroy the SQLite driver and stop the polling loop.

create

method
(task: TaskData) => Promise<string>

Schedule a new job.

delete

method
(identifier: string) => Promise<void>

Delete a scheduled job by its ID.

setTaskRunner

method
(runner: TaskRunner) => Promise<void>

Set the task runner function to be called when a job is due.