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>;
}
- Implements:
TaskDriver
constructor
method
(dbPath: = './commandkit-tasks.db') => SQLiteDriverCreate 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.