X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=db%2Fmigrations.go;h=e8fc40d12762934caa1222995879a0ab2f973b3c;hb=4059b21bd00261699ae6c7619adf053a607073e5;hp=5d753f3a052f216d273328f64e385b7311161fdc;hpb=fcb9f26cb8977904f5de9c3151c4033fe41c5e88;p=perso%2FImmae%2FProjets%2FCryptomonnaies%2FCryptoportfolio%2FFront.git diff --git a/db/migrations.go b/db/migrations.go index 5d753f3..e8fc40d 100644 --- a/db/migrations.go +++ b/db/migrations.go @@ -26,7 +26,7 @@ var migrations []Migration = []Migration{ config jsonb )`, `CREATE UNIQUE INDEX IF NOT EXISTS market_name_user_id_idx ON public.market_configs (user_id, market_name)`, - `CREATE INDEX IF NOT EXISTS market_configs_user_id ON market_configs (user_id)`, + `CREATE INDEX IF NOT EXISTS market_configs_user_id ON market_configs (user_id)`, `CREATE TABLE reports ( id BIGSERIAL PRIMARY KEY, date timestamp with time zone NOT NULL, @@ -60,22 +60,44 @@ var migrations []Migration = []Migration{ Down: []string{"DROP VIEW view_report_lines_by_user", "DROP TABLE report_lines", "DROP TABLE reports", "DROP TABLE market_configs", "DROP TABLE users"}, }, { - Version: 2, + Version: 201805061000, Up: []string{ `CREATE VIEW "view_balances" AS - SELECT report_lines.id, - reports.id AS report_id, - market_configs.market_name, - market_configs.id AS market_id, - reports.date AS report_date, - report_lines.date, - report_lines.payload - FROM report_lines - JOIN reports ON reports.id = report_lines.report_id - JOIN market_configs ON reports.market_config_id = market_configs.id - WHERE report_lines.payload::jsonb->'checkpoint' IS NOT NULL`, - `CREATE INDEX checkpoints_idx ON report_lines ((payload->>'checkpoint'))`, + SELECT report_lines.id, + reports.id AS report_id, + market_configs.market_name, + market_configs.id AS market_id, + reports.date AS report_date, + report_lines.date, + report_lines.payload + FROM report_lines + JOIN reports ON reports.id = report_lines.report_id + JOIN market_configs ON reports.market_config_id = market_configs.id + WHERE report_lines.payload::jsonb->>'checkpoint' IS NOT NULL`, + `CREATE INDEX checkpoints_idx ON report_lines ((payload->>'checkpoint'))`, }, Down: []string{"DROP VIEW view_balances", "DROP INDEX checkpoints_idx"}, }, + { + Version: 201805101000, + Up: []string{ + "CREATE TYPE market_config_status AS ENUM ('enabled', 'disabled', 'invalid_credentials')", + "ALTER TABLE market_configs ADD status market_config_status NOT NULL DEFAULT 'disabled'", + }, + Down: []string{ + "ALTER TABLE market_configs DROP COLUMN status", + "DROP TYPE market_config_status", + }, + }, + { + Version: 201805131000, + Up: []string{ + "CREATE TYPE user_role AS ENUM ('admin', 'user')", + "ALTER TABLE users ADD role user_role NOT NULL DEFAULT 'user'", + }, + Down: []string{ + "ALTER TABLE users DROP COLUMN role", + "DROP TYPE user_role", + }, + }, }