Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: add automated actions tables (#5857)
Add tables to support automated actions based on the [design document](https://docs.google.com/document/d/15xPgn6B8gzMPk9RjMAUGu8XvozQ_45jjrsVl_Bm6Chg/edit?usp=sharinghttps://docs.google.com/document/d/15xPgn6B8gzMPk9RjMAUGu8XvozQ_45jjrsVl_Bm6Chg/edit?usp=sharing)
- Loading branch information
1 parent
be579ba
commit 79d438a
Showing
1 changed file
with
44 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,44 @@ | ||
exports.up = function (db, cb) { | ||
db.runSql( | ||
` | ||
CREATE TABLE IF NOT EXISTS action_sets | ||
( | ||
id SERIAL PRIMARY KEY NOT NULL, | ||
created_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), | ||
created_by_user_id INTEGER, | ||
name varchar(255), | ||
project VARCHAR(255) NOT NULL, | ||
actor_id INTEGER, | ||
source varchar(255), | ||
source_id INTEGER, | ||
payload JSONB DEFAULT '{}'::jsonb NOT NULL, | ||
FOREIGN KEY (project) references projects(id) ON DELETE CASCADE | ||
); | ||
CREATE TABLE IF NOT EXISTS actions | ||
( | ||
id SERIAL PRIMARY KEY NOT NULL, | ||
created_at TIMESTAMP WITH TIME ZONE NOT NULL DEFAULT now(), | ||
created_by_user_id INTEGER, | ||
action_set_id INTEGER references action_sets (id) ON DELETE CASCADE, | ||
sort_order INTEGER, | ||
action varchar(255) NOT NULL, | ||
execution_params JSONB DEFAULT '{}'::jsonb NOT NULL | ||
); | ||
CREATE INDEX idx_action_sets_project ON action_sets (project); | ||
`, | ||
cb, | ||
); | ||
}; | ||
|
||
exports.down = function (db, cb) { | ||
db.runSql( | ||
` | ||
DROP INDEX IF EXISTS idx_action_sets_project; | ||
DROP TABLE IF EXISTS actions; | ||
DROP TABLE IF EXISTS action_sets; | ||
`, | ||
cb, | ||
); | ||
}; |