Files
probo/pkg/coredata/migrations/20250425T012700Z.sql
Bryan Frimin a7cd94956a Refatcor policies management
Signed-off-by: Bryan Frimin <bryan@getprobo.com>
2025-04-28 16:03:42 -07:00

23 lines
682 B
SQL

CREATE TYPE policy_status_new AS ENUM ('DRAFT', 'PUBLISHED');
ALTER TABLE policy_versions ADD COLUMN temp_status TEXT;
UPDATE policy_versions SET temp_status =
CASE WHEN status::TEXT = 'ACTIVE' THEN 'PUBLISHED'
ELSE status::TEXT
END;
ALTER TABLE policy_versions DROP COLUMN status;
ALTER TABLE policy_versions ADD COLUMN status policy_status_new;
UPDATE policy_versions SET status = temp_status::policy_status_new;
ALTER TABLE policy_versions DROP COLUMN temp_status;
DROP TYPE policy_status;
ALTER TYPE policy_status_new RENAME TO policy_status;
CREATE UNIQUE INDEX policy_one_draft_version_idx ON policy_versions (policy_id, status)
WHERE status = 'DRAFT';