Blame alembic/versions/a13967424130_add_pr_tags_table.py

Pierre-Yves Chibon 413a97
"""Add PR tags table
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
Revision ID: a13967424130
Pierre-Yves Chibon 413a97
Revises: 01e58ee9eccb
Pierre-Yves Chibon 413a97
Create Date: 2017-11-05 16:56:01.164976
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
"""
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
import datetime
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
from alembic import op
Pierre-Yves Chibon 413a97
import sqlalchemy as sa
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
# revision identifiers, used by Alembic.
Pierre-Yves Chibon 413a97
revision = 'a13967424130'
Pierre-Yves Chibon 413a97
down_revision = '01e58ee9eccb'
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
def upgrade():
Pierre-Yves Chibon 413a97
    """ Create the tags_pull_requests to store the tags of pull-requests.
Pierre-Yves Chibon 413a97
    """
Pierre-Yves Chibon 413a97
    op.create_table(
Pierre-Yves Chibon 413a97
        'tags_pull_requests',
Pierre-Yves Chibon 413a97
        sa.Column(
Pierre-Yves Chibon 413a97
            'tag_id',
Pierre-Yves Chibon 413a97
            sa.Integer,
Pierre-Yves Chibon 413a97
            sa.ForeignKey(
Pierre-Yves Chibon 413a97
                'tags_colored.id', ondelete='CASCADE', onupdate='CASCADE',
Pierre-Yves Chibon 413a97
            ),
Pierre-Yves Chibon 413a97
            primary_key=True),
Pierre-Yves Chibon 413a97
        sa.Column(
Pierre-Yves Chibon 413a97
            'request_uid',
Pierre-Yves Chibon 413a97
            sa.String(32),
Pierre-Yves Chibon 413a97
            sa.ForeignKey(
Pierre-Yves Chibon 413a97
                'pull_requests.uid', ondelete='CASCADE', onupdate='CASCADE',
Pierre-Yves Chibon 413a97
            ),
Pierre-Yves Chibon 413a97
            primary_key=True),
Pierre-Yves Chibon 413a97
        sa.Column(
Pierre-Yves Chibon 413a97
            'date_created',
Pierre-Yves Chibon 413a97
            sa.DateTime,
Pierre-Yves Chibon 413a97
            nullable=False,
Pierre-Yves Chibon 413a97
            default=datetime.datetime.utcnow),
Pierre-Yves Chibon 413a97
    )
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
Pierre-Yves Chibon 413a97
def downgrade():
Pierre-Yves Chibon 413a97
    """ Delete the tags_pull_requests table. """
Pierre-Yves Chibon 413a97
    op.drop_table('tags_pull_requests')