# SPDX-FileCopyrightText: WTF Kooperative eG # # SPDX-License-Identifier: AGPL-3.0-or-later """Initial migration. Revision ID: ebb2dd1fb371 Revises: Create Date: 2021-07-02 16:20:18.160228 """ from alembic import op import sqlalchemy as sa # revision identifiers, used by Alembic. revision = 'ebb2dd1fb371' down_revision = None branch_labels = None depends_on = None def upgrade(): # ### commands auto generated by Alembic - please adjust! ### op.create_table('contacttype', sa.Column('id', sa.Integer(), nullable=False), sa.Column('name', sa.String(length=25), nullable=False), sa.PrimaryKeyConstraint('id') ) op.create_table('language', sa.Column('id', sa.String(length=2), nullable=False), sa.Column('name', sa.String(length=25), nullable=False), sa.PrimaryKeyConstraint('id') ) op.create_table('profile', sa.Column('id', sa.Integer(), nullable=False), sa.Column('nickname', sa.String(length=25), nullable=False), sa.Column('pronouns', sa.String(length=25), nullable=True), sa.Column('volunteerwork', sa.String(length=4000), nullable=True), sa.Column('freetext', sa.String(length=4000), nullable=True), sa.Column('visible', sa.Boolean(), nullable=False), sa.Column('created', sa.DateTime(), nullable=False), sa.Column('updated', sa.DateTime(), nullable=False), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('nickname') ) op.create_table('skill', sa.Column('id', sa.Integer(), nullable=False), sa.Column('name', sa.String(length=25), nullable=False), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('name') ) op.create_table('address', sa.Column('id', sa.Integer(), nullable=False), sa.Column('name', sa.String(length=25), nullable=True), sa.Column('street', sa.String(length=25), nullable=True), sa.Column('house_number', sa.String(length=10), nullable=True), sa.Column('additional', sa.String(length=25), nullable=True), sa.Column('postcode', sa.String(length=10), nullable=True), sa.Column('city', sa.String(length=25), nullable=True), sa.Column('country', sa.String(length=25), nullable=True), sa.Column('profile_id', sa.Integer(), nullable=False), sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('contact', sa.Column('id', sa.Integer(), nullable=False), sa.Column('profile_id', sa.Integer(), nullable=False), sa.Column('contacttype_id', sa.Integer(), nullable=False), sa.Column('content', sa.String(length=200), nullable=False), sa.ForeignKeyConstraint(['contacttype_id'], ['contacttype.id'], ), sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), sa.PrimaryKeyConstraint('id') ) op.create_table('profile_language', sa.Column('profile_id', sa.Integer(), nullable=False), sa.Column('language_id', sa.Integer(), nullable=False), sa.Column('level', sa.SmallInteger(), nullable=False), sa.ForeignKeyConstraint(['language_id'], ['language.id'], ), sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), sa.PrimaryKeyConstraint('profile_id', 'language_id') ) op.create_table('profile_skill', sa.Column('profile_id', sa.Integer(), nullable=False), sa.Column('skill_id', sa.Integer(), nullable=False), sa.Column('level', sa.SmallInteger(), nullable=False), sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), sa.ForeignKeyConstraint(['skill_id'], ['skill.id'], ), sa.PrimaryKeyConstraint('profile_id', 'skill_id') ) op.create_table('user', sa.Column('id', sa.Integer(), nullable=False), sa.Column('auth_id', sa.String(length=50), nullable=False), sa.Column('profile_id', sa.Integer(), nullable=True), sa.ForeignKeyConstraint(['profile_id'], ['profile.id'], ), sa.PrimaryKeyConstraint('id'), sa.UniqueConstraint('auth_id') ) op.create_table('token', sa.Column('id', sa.Integer(), nullable=False), sa.Column('user_id', sa.Integer(), nullable=False), sa.Column('token', sa.String(length=36), nullable=False), sa.ForeignKeyConstraint(['user_id'], ['user.id'], ), sa.PrimaryKeyConstraint('id') ) # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### op.drop_table('token') op.drop_table('user') op.drop_table('profile_skill') op.drop_table('profile_language') op.drop_table('contact') op.drop_table('address') op.drop_table('skill') op.drop_table('profile') op.drop_table('language') op.drop_table('contacttype') # ### end Alembic commands ###