Allow revising active betas with fresh tests and history
This commit is contained in:
@@ -180,6 +180,32 @@ CREATE TABLE IF NOT EXISTS betas (
|
||||
CREATE INDEX IF NOT EXISTS idx_betas_state ON betas(state);
|
||||
CREATE INDEX IF NOT EXISTS idx_betas_script ON betas(script_id);
|
||||
|
||||
-- Revisions keep the beta identity and original rollback images. Archived
|
||||
-- files are independent copies so version cleanup cannot erase this history.
|
||||
CREATE TABLE IF NOT EXISTS beta_revisions (
|
||||
beta_id INTEGER NOT NULL REFERENCES betas(id) ON DELETE CASCADE,
|
||||
revision INTEGER NOT NULL,
|
||||
started_at TEXT NOT NULL,
|
||||
notes TEXT,
|
||||
results_json TEXT,
|
||||
PRIMARY KEY (beta_id, revision)
|
||||
);
|
||||
CREATE TABLE IF NOT EXISTS beta_revision_files (
|
||||
beta_id INTEGER NOT NULL,
|
||||
revision INTEGER NOT NULL,
|
||||
script_id INTEGER NOT NULL,
|
||||
name TEXT NOT NULL,
|
||||
kind TEXT NOT NULL,
|
||||
path TEXT NOT NULL,
|
||||
version_id INTEGER NOT NULL,
|
||||
version INTEGER NOT NULL,
|
||||
release_version TEXT,
|
||||
sha256 TEXT NOT NULL,
|
||||
content BLOB NOT NULL,
|
||||
PRIMARY KEY (beta_id, revision, script_id),
|
||||
FOREIGN KEY (beta_id, revision) REFERENCES beta_revisions(beta_id, revision) ON DELETE CASCADE
|
||||
);
|
||||
|
||||
CREATE TABLE IF NOT EXISTS beta_servers (
|
||||
beta_id INTEGER NOT NULL REFERENCES betas(id) ON DELETE CASCADE,
|
||||
server TEXT NOT NULL,
|
||||
@@ -208,6 +234,7 @@ CREATE TABLE IF NOT EXISTS beta_test_plans (
|
||||
CREATE TABLE IF NOT EXISTS beta_test_runs (
|
||||
id TEXT PRIMARY KEY,
|
||||
beta_id INTEGER NOT NULL REFERENCES betas(id) ON DELETE CASCADE,
|
||||
revision INTEGER NOT NULL DEFAULT 1,
|
||||
server TEXT NOT NULL,
|
||||
phase INTEGER NOT NULL DEFAULT 0,
|
||||
created_at TEXT NOT NULL,
|
||||
|
||||
Reference in New Issue
Block a user