feat: implement full-stack TaskPilot scheduler
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
CREATE TABLE IF NOT EXISTS tasks (
|
||||
id TEXT PRIMARY KEY NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
cron TEXT NOT NULL,
|
||||
timezone TEXT NOT NULL,
|
||||
enabled INTEGER NOT NULL CHECK (enabled IN (0, 1)),
|
||||
timeout_secs INTEGER NOT NULL CHECK (timeout_secs > 0),
|
||||
concurrency_policy TEXT NOT NULL DEFAULT 'skip'
|
||||
CHECK (concurrency_policy = 'skip'),
|
||||
retry_max_attempts INTEGER NOT NULL DEFAULT 0
|
||||
CHECK (retry_max_attempts >= 0),
|
||||
retry_delay_secs INTEGER NOT NULL DEFAULT 0
|
||||
CHECK (retry_delay_secs >= 0),
|
||||
action_type TEXT NOT NULL
|
||||
CHECK (action_type IN ('script', 'http', 'process')),
|
||||
action_json TEXT NOT NULL,
|
||||
created_at TEXT NOT NULL,
|
||||
updated_at TEXT NOT NULL
|
||||
);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_tasks_updated_at
|
||||
ON tasks(updated_at DESC);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_tasks_enabled
|
||||
ON tasks(enabled);
|
||||
|
||||
CREATE INDEX IF NOT EXISTS idx_tasks_action_type
|
||||
ON tasks(action_type);
|
||||
Reference in New Issue
Block a user