From 254637bfa981629ab463ec523ecf1d74a4aed492 Mon Sep 17 00:00:00 2001 From: Tobias Kurze Date: Wed, 17 Apr 2019 09:07:24 +0200 Subject: [PATCH] some migrations; commit just to be on 'nice' state --- app.db | Bin 102400 -> 102400 bytes migrations/versions/6f980d1e7ac5_.py | 35 ------- migrations/versions/b154e49921e0_.py | 136 +++++++++++++++++++++++++++ 3 files changed, 136 insertions(+), 35 deletions(-) delete mode 100644 migrations/versions/6f980d1e7ac5_.py create mode 100644 migrations/versions/b154e49921e0_.py diff --git a/app.db b/app.db index 2eab981b9056ddd0152761e6b7df79d3797f2ac8..d09516d424765c29e9c666dd17af64f37ae46e59 100644 GIT binary patch delta 111 zcmZozz}B#UZGtqT#6%fqRtW|@1FMZG3+e^f_$M&%zvaKpe~Nz>|04bgn*{}G_=N=6 zSQu1!OY(DaQWesRN(%~7Cok$x;$!3Az`*~W{~rHY{)7A*HVaIc$1f|Dw%;0u%TrFX~SM ciXUX)f6sr9|1AGO{;NRo_57O;&bR*n07y0&uK)l5 diff --git a/migrations/versions/6f980d1e7ac5_.py b/migrations/versions/6f980d1e7ac5_.py deleted file mode 100644 index 1d5ffa6..0000000 --- a/migrations/versions/6f980d1e7ac5_.py +++ /dev/null @@ -1,35 +0,0 @@ -"""empty message - -Revision ID: 6f980d1e7ac5 -Revises: -Create Date: 2019-04-02 13:33:29.319719 - -""" -from alembic import op -import sqlalchemy as sa - - -# revision identifiers, used by Alembic. -revision = '6f980d1e7ac5' -down_revision = None -branch_labels = None -depends_on = None - - -def upgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.create_table('groups', - sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), - sa.Column('name', sa.Unicode(length=64), nullable=False), - sa.PrimaryKeyConstraint('id'), - sa.UniqueConstraint('name') - ) - op.add_column('user', sa.Column('external_user', sa.Boolean(), nullable=True)) - # ### end Alembic commands ### - - -def downgrade(): - # ### commands auto generated by Alembic - please adjust! ### - op.drop_column('user', 'external_user') - op.drop_table('groups') - # ### end Alembic commands ### diff --git a/migrations/versions/b154e49921e0_.py b/migrations/versions/b154e49921e0_.py new file mode 100644 index 0000000..e14bd9e --- /dev/null +++ b/migrations/versions/b154e49921e0_.py @@ -0,0 +1,136 @@ +"""empty message + +Revision ID: b154e49921e0 +Revises: +Create Date: 2019-04-11 14:44:25.836132 + +""" +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = 'b154e49921e0' +down_revision = None +branch_labels = None +depends_on = None + + +def upgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.create_table('blacklist_tokens', + sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), + sa.Column('token', sa.String(length=500), nullable=False), + sa.Column('blacklisted_on', sa.DateTime(), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('token') + ) + op.create_table('example_data_item', + sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), + sa.Column('mac', sa.String(length=32), nullable=False), + sa.Column('uuid', sa.String(length=36), nullable=False), + sa.Column('some_string_value', sa.String(), nullable=True), + sa.Column('name', sa.String(length=128), nullable=False), + sa.Column('description', sa.String(length=4096), nullable=True), + sa.PrimaryKeyConstraint('id') + ) + op.create_index(op.f('ix_example_data_item_mac'), 'example_data_item', ['mac'], unique=True) + op.create_index(op.f('ix_example_data_item_name'), 'example_data_item', ['name'], unique=False) + op.create_index(op.f('ix_example_data_item_some_string_value'), 'example_data_item', ['some_string_value'], unique=False) + op.create_index(op.f('ix_example_data_item_uuid'), 'example_data_item', ['uuid'], unique=True) + op.create_table('group', + sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), + sa.Column('name', sa.Unicode(length=63), nullable=False), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('name') + ) + op.create_table('permission', + sa.Column('id', sa.Integer(), autoincrement=True, nullable=False), + sa.Column('name', sa.Unicode(length=63), nullable=False), + sa.Column('description', sa.Unicode(length=255), nullable=True), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('name') + ) + op.create_table('group_permission', + sa.Column('group_id', sa.Integer(), nullable=False), + sa.Column('permission_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['group_id'], ['group.id'], onupdate='CASCADE', ondelete='CASCADE'), + sa.ForeignKeyConstraint(['permission_id'], ['permission.id'], onupdate='CASCADE', ondelete='CASCADE'), + sa.PrimaryKeyConstraint('group_id', 'permission_id') + ) + op.create_table('user', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('social_id', sa.Unicode(length=63), nullable=True), + sa.Column('nickname', sa.Unicode(length=63), nullable=True), + sa.Column('first_name', sa.Unicode(length=63), nullable=True), + sa.Column('last_name', sa.Unicode(length=63), nullable=True), + sa.Column('email', sa.String(length=120), nullable=False), + sa.Column('lang', sa.Unicode(length=32), nullable=True), + sa.Column('timezone', sa.Unicode(length=63), nullable=True), + sa.Column('example_data_item_id', sa.Integer(), nullable=True), + sa.Column('about_me', sa.Unicode(length=255), nullable=True), + sa.Column('role', sa.Unicode(length=63), nullable=True), + sa.Column('password', sa.String(length=255), nullable=True), + sa.Column('registered_on', sa.DateTime(), nullable=False), + sa.Column('external_user', sa.Boolean(), nullable=True), + sa.Column('last_seen', sa.DateTime(), nullable=True), + sa.Column('jwt_exp_delta_seconds', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['example_data_item_id'], ['example_data_item.id'], ), + sa.PrimaryKeyConstraint('id'), + sa.UniqueConstraint('social_id') + ) + op.create_index(op.f('ix_user_email'), 'user', ['email'], unique=True) + op.create_index(op.f('ix_user_first_name'), 'user', ['first_name'], unique=False) + op.create_index(op.f('ix_user_last_name'), 'user', ['last_name'], unique=False) + op.create_index(op.f('ix_user_nickname'), 'user', ['nickname'], unique=True) + op.create_table('acquaintances', + sa.Column('me_id', sa.Integer(), nullable=True), + sa.Column('acquaintance_id', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['acquaintance_id'], ['user.id'], ), + sa.ForeignKeyConstraint(['me_id'], ['user.id'], ) + ) + op.create_table('followers', + sa.Column('follower_id', sa.Integer(), nullable=True), + sa.Column('followed_id', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['followed_id'], ['user.id'], ), + sa.ForeignKeyConstraint(['follower_id'], ['user.id'], ) + ) + op.create_table('post', + sa.Column('id', sa.Integer(), nullable=False), + sa.Column('body', sa.String(length=140), nullable=True), + sa.Column('timestamp', sa.DateTime(), nullable=True), + sa.Column('user_id', sa.Integer(), nullable=True), + sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), + sa.PrimaryKeyConstraint('id') + ) + op.create_table('user_group', + sa.Column('user_id', sa.Integer(), nullable=False), + sa.Column('group_id', sa.Integer(), nullable=False), + sa.ForeignKeyConstraint(['group_id'], ['group.id'], onupdate='CASCADE', ondelete='CASCADE'), + sa.ForeignKeyConstraint(['user_id'], ['user.id'], onupdate='CASCADE', ondelete='CASCADE'), + sa.PrimaryKeyConstraint('user_id', 'group_id') + ) + # ### end Alembic commands ### + + +def downgrade(): + # ### commands auto generated by Alembic - please adjust! ### + op.drop_table('user_group') + op.drop_table('post') + op.drop_table('followers') + op.drop_table('acquaintances') + op.drop_index(op.f('ix_user_nickname'), table_name='user') + op.drop_index(op.f('ix_user_last_name'), table_name='user') + op.drop_index(op.f('ix_user_first_name'), table_name='user') + op.drop_index(op.f('ix_user_email'), table_name='user') + op.drop_table('user') + op.drop_table('group_permission') + op.drop_table('permission') + op.drop_table('group') + op.drop_index(op.f('ix_example_data_item_uuid'), table_name='example_data_item') + op.drop_index(op.f('ix_example_data_item_some_string_value'), table_name='example_data_item') + op.drop_index(op.f('ix_example_data_item_name'), table_name='example_data_item') + op.drop_index(op.f('ix_example_data_item_mac'), table_name='example_data_item') + op.drop_table('example_data_item') + op.drop_table('blacklist_tokens') + # ### end Alembic commands ###