Skip to main content

max / makenotwork

645 B · 19 lines History Blame Raw
1 CREATE TABLE git_repos (
2 id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
3 user_id UUID NOT NULL REFERENCES users(id) ON DELETE CASCADE,
4 name VARCHAR(64) NOT NULL,
5 project_id UUID REFERENCES projects(id) ON DELETE SET NULL,
6 created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
7 UNIQUE (user_id, name)
8 );
9
10 -- Migrate existing project->repo links
11 INSERT INTO git_repos (user_id, name, project_id)
12 SELECT p.user_id, p.git_repo_name, p.id
13 FROM projects p
14 WHERE p.git_repo_name IS NOT NULL;
15
16 -- Drop old column + index
17 DROP INDEX IF EXISTS idx_projects_git_repo_unique;
18 ALTER TABLE projects DROP COLUMN git_repo_name;
19