mirror of
https://github.com/GSA/notifications-api.git
synced 2025-12-10 15:22:24 -05:00
Made the downgrades work
This commit is contained in:
@@ -29,10 +29,10 @@ def upgrade():
|
||||
|
||||
op.add_column('provider_rates', sa.Column('provider_id', postgresql.UUID(as_uuid=True), nullable=True))
|
||||
op.create_index(op.f('ix_provider_rates_provider_id'), 'provider_rates', ['provider_id'], unique=False)
|
||||
op.create_foreign_key(None, 'provider_rates', 'provider_details', ['provider_id'], ['id'])
|
||||
op.create_foreign_key("provider_rate_to_provider_fk", 'provider_rates', 'provider_details', ['provider_id'], ['id'])
|
||||
op.add_column('provider_statistics', sa.Column('provider_id', postgresql.UUID(as_uuid=True), nullable=True))
|
||||
op.create_index(op.f('ix_provider_statistics_provider_id'), 'provider_statistics', ['provider_id'], unique=False)
|
||||
op.create_foreign_key(None, 'provider_statistics', 'provider_details', ['provider_id'], ['id'])
|
||||
op.create_foreign_key('provider_stats_to_provider_fk', 'provider_statistics', 'provider_details', ['provider_id'], ['id'])
|
||||
|
||||
op.execute(
|
||||
"INSERT INTO provider_details (id, display_name, identifier, priority, notification_type, active) values ('{}', 'MMG', 'mmg', 10, 'sms', true)".format(str(uuid.uuid4()))
|
||||
@@ -64,11 +64,12 @@ def upgrade():
|
||||
|
||||
def downgrade():
|
||||
|
||||
op.drop_constraint(None, 'provider_statistics', type_='foreignkey')
|
||||
op.drop_constraint('provider_stats_to_provider_fk', 'provider_statistics', type_='foreignkey')
|
||||
op.drop_index(op.f('ix_provider_statistics_provider_id'), table_name='provider_statistics')
|
||||
op.drop_column('provider_statistics', 'provider_id')
|
||||
op.drop_constraint(None, 'provider_rates', type_='foreignkey')
|
||||
op.drop_constraint('provider_rate_to_provider_fk', 'provider_rates', type_='foreignkey')
|
||||
op.drop_index(op.f('ix_provider_rates_provider_id'), table_name='provider_rates')
|
||||
op.drop_column('provider_rates', 'provider_id')
|
||||
|
||||
op.drop_table('provider_details')
|
||||
op.execute('drop type notification_type')
|
||||
|
||||
@@ -13,6 +13,8 @@ down_revision = '0011_ad_provider_details'
|
||||
from alembic import op
|
||||
import sqlalchemy as sa
|
||||
from sqlalchemy.dialects import postgresql
|
||||
from sqlalchemy.dialects.postgresql import ENUM
|
||||
|
||||
|
||||
def upgrade():
|
||||
|
||||
@@ -24,15 +26,55 @@ def upgrade():
|
||||
existing_type=postgresql.UUID(),
|
||||
nullable=False)
|
||||
op.drop_column('provider_statistics', 'provider')
|
||||
op.execute('drop type providers')
|
||||
|
||||
|
||||
def downgrade():
|
||||
|
||||
op.add_column('provider_statistics', sa.Column('provider', postgresql.ENUM('mmg', 'twilio', 'firetext', 'ses', name='providers'), autoincrement=False, nullable=False))
|
||||
provider_enum = ENUM('loadtesting', 'firetext', 'mmg', 'ses', name='providers', create_type=True)
|
||||
provider_enum.create(op.get_bind(), checkfirst=False)
|
||||
|
||||
op.add_column('provider_statistics', sa.Column('provider', provider_enum, autoincrement=False, nullable=True))
|
||||
op.alter_column('provider_statistics', 'provider_id',
|
||||
existing_type=postgresql.UUID(),
|
||||
nullable=True)
|
||||
op.add_column('provider_rates', sa.Column('provider', postgresql.ENUM('mmg', 'twilio', 'firetext', 'ses', name='providers'), autoincrement=False, nullable=False))
|
||||
op.add_column('provider_rates', sa.Column('provider', provider_enum, autoincrement=False, nullable=True))
|
||||
op.alter_column('provider_rates', 'provider_id',
|
||||
existing_type=postgresql.UUID(),
|
||||
nullable=True)
|
||||
|
||||
|
||||
op.execute(
|
||||
"UPDATE provider_rates set provider = 'mmg' where provider_id = (select id from provider_details where identifier = 'mmg')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_rates set provider = 'firetext' where provider_id = (select id from provider_details where identifier = 'firetext')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_rates set provider = 'ses' where provider_id = (select id from provider_details where identifier = 'ses')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_rates set provider = 'loadtesting' where provider_id = (select id from provider_details where identifier = 'loadtesting')"
|
||||
)
|
||||
|
||||
op.execute(
|
||||
"UPDATE provider_statistics set provider = 'mmg' where provider_id = (select id from provider_details where identifier = 'mmg')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_statistics set provider = 'firetext' where provider_id = (select id from provider_details where identifier = 'firetext')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_statistics set provider = 'ses' where provider_id = (select id from provider_details where identifier = 'ses')"
|
||||
)
|
||||
op.execute(
|
||||
"UPDATE provider_statistics set provider = 'loadtesting' where provider_id = (select id from provider_details where identifier = 'loadtesting')"
|
||||
)
|
||||
|
||||
|
||||
op.alter_column('provider_rates', 'provider',
|
||||
existing_type=postgresql.UUID(),
|
||||
nullable=False)
|
||||
|
||||
op.alter_column('provider_statistics', 'provider',
|
||||
existing_type=postgresql.UUID(),
|
||||
nullable=False)
|
||||
Reference in New Issue
Block a user