redditraffler/redditraffler

View on GitHub
app/db/migrations/versions/1b2abc79a5c6_initial_migration.py

Summary

Maintainability
A
0 mins
Test Coverage
"""Initial migration

Revision ID: 1b2abc79a5c6
Revises: 
Create Date: 2018-03-07 21:35:55.752189

"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = "1b2abc79a5c6"
down_revision = None
branch_labels = None
depends_on = None


def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table(
        "user",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("created_at", sa.DateTime(), nullable=True),
        sa.Column("updated_at", sa.DateTime(), nullable=True),
        sa.Column("username", sa.String(length=64), nullable=True),
        sa.PrimaryKeyConstraint("id"),
    )
    op.create_index(op.f("ix_user_username"), "user", ["username"], unique=True)
    op.create_table(
        "raffle",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("created_at", sa.DateTime(), nullable=True),
        sa.Column("updated_at", sa.DateTime(), nullable=True),
        sa.Column("submission_id", sa.String(length=64), nullable=True),
        sa.Column("submission_title", sa.String(length=128), nullable=True),
        sa.Column("submission_author", sa.String(length=64), nullable=True),
        sa.Column("subreddit", sa.String(length=64), nullable=True),
        sa.Column("winner_count", sa.Integer(), nullable=True),
        sa.Column("min_account_age", sa.Integer(), nullable=True),
        sa.Column("min_comment_karma", sa.Integer(), nullable=True),
        sa.Column("min_link_karma", sa.Integer(), nullable=True),
        sa.Column("user_id", sa.Integer(), nullable=True),
        sa.ForeignKeyConstraint(["user_id"], ["user.id"]),
        sa.PrimaryKeyConstraint("id"),
    )
    op.create_index(
        op.f("ix_raffle_submission_id"), "raffle", ["submission_id"], unique=True
    )
    op.create_index(op.f("ix_raffle_user_id"), "raffle", ["user_id"], unique=False)
    op.create_table(
        "winner",
        sa.Column("id", sa.Integer(), nullable=False),
        sa.Column("created_at", sa.DateTime(), nullable=True),
        sa.Column("updated_at", sa.DateTime(), nullable=True),
        sa.Column("username", sa.String(length=64), nullable=True),
        sa.Column("account_age", sa.Integer(), nullable=True),
        sa.Column("comment_karma", sa.Integer(), nullable=True),
        sa.Column("link_karma", sa.Integer(), nullable=True),
        sa.Column("comment_url", sa.String(length=128), nullable=True),
        sa.Column("raffle_id", sa.Integer(), nullable=False),
        sa.ForeignKeyConstraint(["raffle_id"], ["raffle.id"]),
        sa.PrimaryKeyConstraint("id"),
    )
    op.create_index(op.f("ix_winner_raffle_id"), "winner", ["raffle_id"], unique=False)
    # ### end Alembic commands ###


def downgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.drop_index(op.f("ix_winner_raffle_id"), table_name="winner")
    op.drop_table("winner")
    op.drop_index(op.f("ix_raffle_user_id"), table_name="raffle")
    op.drop_index(op.f("ix_raffle_submission_id"), table_name="raffle")
    op.drop_table("raffle")
    op.drop_index(op.f("ix_user_username"), table_name="user")
    op.drop_table("user")
    # ### end Alembic commands ###