From ca33a1604fe2825956f3cd932215fb7110a215dc Mon Sep 17 00:00:00 2001 From: Vivek Anand Date: Feb 15 2017 10:28:57 +0000 Subject: Add call to create tables in alembic script Signed-off-by: Vivek Anand --- diff --git a/alembic/versions/987edda096f5_access_id_in_user_projects.py b/alembic/versions/987edda096f5_access_id_in_user_projects.py index 6e053b9..469303e 100644 --- a/alembic/versions/987edda096f5_access_id_in_user_projects.py +++ b/alembic/versions/987edda096f5_access_id_in_user_projects.py @@ -12,13 +12,33 @@ down_revision = '38581a8fbae2' from alembic import op import sqlalchemy as sa +from sqlalchemy.sql import table, column +acl = table ( + 'access_levels', + column('access', sa.String(255)) +) def upgrade(): ''' Add a foreign key in user_projects and projects_groups table for access_levels ''' + # To allow N + 2 migrations easier + # without going through N + 1 + # Make sure, we have all the tables + op.create_table( + 'access_levels', + sa.Column('access', sa.String(255), primary_key=True) + ) + op.bulk_insert( + acl, + [ + {'access': 'ticket'}, + {'access': 'commit'}, + {'access': 'admin'}, + ], + ) op.add_column( 'user_projects', sa.Column( @@ -78,7 +98,6 @@ def upgrade(): ) - def downgrade(): ''' Remove column access_id from user_projects and projects_groups ''' @@ -97,3 +116,4 @@ def downgrade(): 'projects_groups', ['project_id', 'group_id'], ) + op.drop_table('access_levels')