29 lines
1 KiB
SQL
29 lines
1 KiB
SQL
CREATE TABLE IF NOT EXISTS channels (
|
|
id UUID NOT NULL PRIMARY KEY,
|
|
team_id UUID NOT NULL REFERENCES teams(id),
|
|
name TEXT NOT NULL,
|
|
enable_by_default BOOLEAN NOT NULL DEFAULT FALSE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS email_channels (
|
|
id UUID NOT NULL PRIMARY KEY REFERENCES channels(id) ON DELETE CASCADE,
|
|
recipient TEXT NOT NULL DEFAULT '',
|
|
verification_code TEXT NOT NULL DEFAULT '',
|
|
verification_code_guesses INT NOT NULL DEFAULT 0,
|
|
verified BOOLEAN NOT NULL DEFAULT FALSE
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS slack_channels (
|
|
id UUID NOT NULL PRIMARY KEY REFERENCES channels(id) ON DELETE CASCADE,
|
|
oauth_state TEXT NOT NULL DEFAULT '',
|
|
access_token TEXT NOT NULL DEFAULT '',
|
|
conversation_id TEXT NOT NULL DEFAULT ''
|
|
);
|
|
|
|
CREATE TABLE IF NOT EXISTS channel_selections (
|
|
project_id UUID NOT NULL REFERENCES projects(id),
|
|
channel_id UUID NOT NULL REFERENCES channels(id),
|
|
PRIMARY KEY (project_id, channel_id)
|
|
);
|
|
CREATE INDEX ON channel_selections (project_id);
|
|
CREATE INDEX ON channel_selections (channel_id);
|