Files
notifications-api/migrations/versions/0014_add_template_version.py
Cliff Hill 1157f5639d black, isort, flake8
Signed-off-by: Cliff Hill <Clifford.hill@gsa.gov>
2023-12-08 21:43:52 -05:00

47 lines
1.5 KiB
Python

"""empty message
Revision ID: 0014_add_template_version
Revises: 0012_complete_provider_details
Create Date: 2016-05-11 16:00:51.478012
"""
# revision identifiers, used by Alembic.
revision = "0014_add_template_version"
down_revision = "0012_complete_provider_details"
import sqlalchemy as sa
from alembic import op
from sqlalchemy.dialects import postgresql
def upgrade():
op.add_column("jobs", sa.Column("template_version", sa.Integer(), nullable=True))
op.get_bind()
op.execute(
"update jobs set template_version = (select version from templates where id = template_id)"
)
op.add_column(
"notifications", sa.Column("template_version", sa.Integer(), nullable=True)
)
op.execute(
"update notifications set template_version = (select version from templates where id = template_id)"
)
op.alter_column("jobs", "template_version", nullable=False)
op.alter_column("notifications", "template_version", nullable=False)
# fix template_history where created_by_id is not set.
query = (
"update templates_history set created_by_id = "
" (select created_by_id from templates "
" where templates.id = templates_history.id "
" and templates.version = templates_history.version) "
"where templates_history.created_by_id is null"
)
op.execute(query)
def downgrade():
op.drop_column("notifications", "template_version")
op.drop_column("jobs", "template_version")