From 22d02edbd858649e1c890621d72867d913f8dc57 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sat, 18 Jan 2020 23:10:11 +0000 Subject: Add constraint for release tasks and approval --- migrations/versions/306ce331a2a7_.py | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 migrations/versions/306ce331a2a7_.py (limited to 'migrations') diff --git a/migrations/versions/306ce331a2a7_.py b/migrations/versions/306ce331a2a7_.py new file mode 100644 index 0000000..7e7c0ce --- /dev/null +++ b/migrations/versions/306ce331a2a7_.py @@ -0,0 +1,26 @@ +"""empty message + +Revision ID: 306ce331a2a7 +Revises: 6dca6eceb04d +Create Date: 2020-01-18 23:00:40.487425 + +""" +from alembic import op +import sqlalchemy as sa +from sqlalchemy.dialects import postgresql + +# revision identifiers, used by Alembic. +revision = '306ce331a2a7' +down_revision = '6dca6eceb04d' +branch_labels = None +depends_on = None + + +def upgrade(): + conn = op.get_bind() + op.create_check_constraint("CK_approval_valid", "package_release", "not approved OR (task_id IS NULL AND NOT url = '')") + + +def downgrade(): + conn = op.get_bind() + op.drop_constraint("CK_approval_valid", "package_release", type_="check") -- cgit v1.2.3