diff options
author | Endre Karlson <endre.karlson@hp.com> | 2016-01-08 12:49:22 +0100 |
---|---|---|
committer | Endre Karlson <endre.karlson@hp.com> | 2016-01-11 11:30:56 +0100 |
commit | 483c3767d3621f37701824eac0ad9810f0464d75 (patch) | |
tree | b0bddcfaa9b9d0c5ca8e360d6800e9a4d250dbb8 | |
parent | 6c200765f132d14898682bb9a6b70baa0c639ca7 (diff) | |
download | designate-483c3767d3621f37701824eac0ad9810f0464d75.tar.gz |
Add FK's from Record/RecordSet to domain.id
Closes-Bug: #1520523
Change-Id: Id719657384515e40dc1db78836da9ac9c267b001
-rw-r--r-- | designate/storage/impl_sqlalchemy/migrate_repo/versions/057_add_r_domain_FK.py (renamed from designate/storage/impl_sqlalchemy/migrate_repo/versions/057_placeholder.py) | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/designate/storage/impl_sqlalchemy/migrate_repo/versions/057_placeholder.py b/designate/storage/impl_sqlalchemy/migrate_repo/versions/057_add_r_domain_FK.py index 5626d695..1e7855db 100644 --- a/designate/storage/impl_sqlalchemy/migrate_repo/versions/057_placeholder.py +++ b/designate/storage/impl_sqlalchemy/migrate_repo/versions/057_add_r_domain_FK.py @@ -21,10 +21,26 @@ # See https://blueprints.launchpad.net/nova/+spec/backportable-db-migrations # http://lists.openstack.org/pipermail/openstack-dev/2013-March/006827.html +from migrate.changeset.constraint import ForeignKeyConstraint +from sqlalchemy.schema import MetaData, Table + +# This migration adds back the FKs removed in migration 80, as sqlalchemy +# migrate seems to need to wait to add FKs to renamed tables. + +meta = MetaData() + def upgrade(migrate_engine): - pass + meta.bind = migrate_engine + domains_table = Table('domains', meta, autoload=True) + recordsets_table = Table('recordsets', meta, autoload=True) + records_table = Table('records', meta, autoload=True) -def downgrade(migration_engine): - pass + fks = [] + fks.append(ForeignKeyConstraint([recordsets_table.c.domain_id], + [domains_table.c.id], ondelete='CASCADE')) + fks.append(ForeignKeyConstraint([records_table.c.domain_id], + [domains_table.c.id], ondelete='CASCADE')) + for fk in fks: + fk.create() |