19 lines
763 B
SQL
19 lines
763 B
SQL
CREATE TABLE campaigns (
|
|
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
repository_id UUID NOT NULL REFERENCES repositories(id),
|
|
name TEXT NOT NULL,
|
|
type TEXT NOT NULL,
|
|
status TEXT NOT NULL DEFAULT 'running',
|
|
started_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
|
|
finished_at TIMESTAMPTZ,
|
|
tags JSONB DEFAULT '{}',
|
|
metadata JSONB DEFAULT '{}',
|
|
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
|
|
);
|
|
|
|
CREATE INDEX idx_campaigns_repo ON campaigns (repository_id);
|
|
CREATE INDEX idx_campaigns_status ON campaigns (status);
|
|
|
|
ALTER TABLE artifacts ADD COLUMN campaign_id UUID REFERENCES campaigns(id);
|
|
CREATE INDEX idx_artifacts_campaign ON artifacts (campaign_id);
|