]> git.lizzy.rs Git - cheatdb.git/blob - migrations/versions/b3c7ff6655af_.py
Implement package states for easier reviews
[cheatdb.git] / migrations / versions / b3c7ff6655af_.py
1 """empty message
2
3 Revision ID: b3c7ff6655af
4 Revises: dff4b87e4a76
5 Create Date: 2020-09-16 14:35:43.805422
6
7 """
8 from alembic import op
9 import sqlalchemy as sa
10 from sqlalchemy.dialects import postgresql
11
12 # revision identifiers, used by Alembic.
13 revision = 'b3c7ff6655af'
14 down_revision = 'dff4b87e4a76'
15 branch_labels = None
16 depends_on = None
17
18
19 def upgrade():
20         status = postgresql.ENUM('WIP', 'READY_FOR_REVIEW', 'APPROVED', 'DELETED', name='packagestate')
21         status.create(op.get_bind())
22
23         op.add_column('package', sa.Column('state', sa.Enum('WIP', 'CHANGES_NEEDED', 'READY_FOR_REVIEW', 'APPROVED', 'DELETED', name='packagestate'), nullable=True))
24         op.execute("UPDATE package SET state='APPROVED' WHERE approved=true")
25         op.execute("UPDATE package SET state='DELETED' WHERE soft_deleted=true")
26         op.drop_column('package', 'approved')
27         op.drop_column('package', 'updated_at')
28         op.drop_column('package', 'soft_deleted')
29         # ### end Alembic commands ###
30
31
32 def downgrade():
33         # ### commands auto generated by Alembic - please adjust! ###
34         op.add_column('package', sa.Column('soft_deleted', sa.BOOLEAN(), server_default=sa.text('false'), autoincrement=False, nullable=False))
35         op.add_column('package', sa.Column('approved', sa.BOOLEAN(), autoincrement=False, nullable=False))
36         op.drop_column('package', 'state')
37         # ### end Alembic commands ###