components/openstack/neutron/patches/05-alembic-migrations.patch
changeset 6848 8e252a37ed0d
parent 6847 57069587975f
child 6849 f9a2279efa0d
--- a/components/openstack/neutron/patches/05-alembic-migrations.patch	Wed Sep 07 14:48:41 2016 -0700
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,266 +0,0 @@
-In-house patch to skip over unnecessary database migrations for Neutron.
-Juno database tables for Neutron do not need these migrations when upgrading
-to Kilo.
-
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/agent_init_ops.py.orig	2016-04-22 23:23:15.523526779 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/agent_init_ops.py	2016-04-22 23:25:39.337181119 -0700
-@@ -23,7 +23,10 @@
- 
- 
- def upgrade():
--    op.create_table(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    if 'agents' not in insp.get_table_names():
-+        op.create_table(
-         'agents',
-         sa.Column('id', sa.String(length=36), nullable=False),
-         sa.Column('agent_type', sa.String(length=255), nullable=False),
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/core_init_ops.py.orig	2016-04-22 23:25:50.350653015 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/core_init_ops.py	2016-04-22 23:30:15.715403373 -0700
-@@ -19,7 +19,11 @@
- 
- 
- def upgrade():
--    op.create_table(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    table_names = insp.get_table_names()
-+    if 'networks' not in table_names:
-+        op.create_table(
-         'networks',
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
-         sa.Column('id', sa.String(length=36), nullable=False),
-@@ -29,7 +33,8 @@
-         sa.Column('shared', sa.Boolean(), nullable=True),
-         sa.PrimaryKeyConstraint('id'))
- 
--    op.create_table(
-+    if 'ports' not in table_names:
-+        op.create_table(
-         'ports',
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
-         sa.Column('id', sa.String(length=36), nullable=False),
-@@ -43,7 +48,8 @@
-         sa.ForeignKeyConstraint(['network_id'], ['networks.id'], ),
-         sa.PrimaryKeyConstraint('id'))
- 
--    op.create_table(
-+    if 'subnets' not in table_names:
-+        op.create_table(
-         'subnets',
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
-         sa.Column('id', sa.String(length=36), nullable=False),
-@@ -57,7 +63,8 @@
-         sa.ForeignKeyConstraint(['network_id'], ['networks.id'], ),
-         sa.PrimaryKeyConstraint('id'))
- 
--    op.create_table(
-+    if 'dnsnameservers' not in table_names:
-+        op.create_table(
-         'dnsnameservers',
-         sa.Column('address', sa.String(length=128), nullable=False),
-         sa.Column('subnet_id', sa.String(length=36), nullable=False),
-@@ -65,7 +72,8 @@
-                                 ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('address', 'subnet_id'))
- 
--    op.create_table(
-+    if 'ipallocationpools' not in table_names:
-+        op.create_table(
-         'ipallocationpools',
-         sa.Column('id', sa.String(length=36), nullable=False),
-         sa.Column('subnet_id', sa.String(length=36), nullable=True),
-@@ -75,7 +83,8 @@
-                                 ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('id'))
- 
--    op.create_table(
-+    if 'subnetroutes' not in table_names:
-+        op.create_table(
-         'subnetroutes',
-         sa.Column('destination', sa.String(length=64), nullable=False),
-         sa.Column('nexthop', sa.String(length=64), nullable=False),
-@@ -84,7 +93,8 @@
-                                 ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('destination', 'nexthop', 'subnet_id'))
- 
--    op.create_table(
-+    if 'ipallocations' not in table_names:
-+        op.create_table(
-         'ipallocations',
-         sa.Column('port_id', sa.String(length=36), nullable=True),
-         sa.Column('ip_address', sa.String(length=64), nullable=False),
-@@ -97,7 +107,8 @@
-                                 ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('ip_address', 'subnet_id', 'network_id'))
- 
--    op.create_table(
-+    if 'ipavailabilityranges' not in table_names:
-+        op.create_table(
-         'ipavailabilityranges',
-         sa.Column('allocation_pool_id', sa.String(length=36), nullable=False),
-         sa.Column('first_ip', sa.String(length=64), nullable=False),
-@@ -106,7 +117,8 @@
-                                 ['ipallocationpools.id'], ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('allocation_pool_id', 'first_ip', 'last_ip'))
- 
--    op.create_table(
-+    if 'networkdhcpagentbindings' not in table_names:
-+        op.create_table(
-         'networkdhcpagentbindings',
-         sa.Column('network_id', sa.String(length=36), nullable=False),
-         sa.Column('dhcp_agent_id', sa.String(length=36), nullable=False),
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/l3_init_ops.py.orig	2016-04-22 23:35:15.205163303 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/l3_init_ops.py	2016-04-22 23:33:36.741262443 -0700
-@@ -31,14 +31,20 @@
- 
- 
- def upgrade():
--    op.create_table(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    table_names = insp.get_table_names()
-+
-+    if 'externalnetworks' not in table_names:
-+        op.create_table(
-         'externalnetworks',
-         sa.Column('network_id', sa.String(length=36), nullable=False),
-         sa.ForeignKeyConstraint(['network_id'], ['networks.id'],
-                                 ondelete='CASCADE'),
-         sa.PrimaryKeyConstraint('network_id'))
- 
--    op.create_table(
-+    if 'routers' not in table_names:
-+        op.create_table(
-         'routers',
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
-         sa.Column('id', sa.String(length=36), nullable=False),
-@@ -51,7 +57,8 @@
-         sa.ForeignKeyConstraint(['gw_port_id'], ['ports.id'], ),
-         sa.PrimaryKeyConstraint('id'))
- 
--    op.create_table(
-+    if 'floatingips' not in table_names:
-+        op.create_table(
-         'floatingips',
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
-         sa.Column('id', sa.String(length=36), nullable=False),
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/other_extensions_init_ops.py.orig	2016-04-22 23:35:35.724592904 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/other_extensions_init_ops.py	2016-04-22 23:37:11.709485583 -0700
-@@ -34,7 +34,10 @@
-         sa.PrimaryKeyConstraint('provider_name', 'resource_id'),
-         sa.UniqueConstraint('resource_id'))
- 
--    op.create_table(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    if 'quotas' not in insp.get_table_names():
-+        op.create_table(
-         'quotas',
-         sa.Column('id', sa.String(length=36), nullable=False),
-         sa.Column('tenant_id', sa.String(length=255), nullable=True),
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/1fcfc149aca4_agents_unique_by_type_and_host.py.orig 2016-04-23 01:59:50.554268246 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/1fcfc149aca4_agents_unique_by_type_and_host.py      2016-04-23 02:01:10.767910540 -0700
-@@ -26,6 +26,7 @@
- down_revision = 'e197124d4b9'
-
- from alembic import op
-+import sqlalchemy as sa
-
- from neutron.db import migration
-
-@@ -41,7 +42,14 @@
-         # configured plugin did not create the agents table.
-         return
-
--    op.create_unique_constraint(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    u_cons_list = insp.get_unique_constraints(TABLE_NAME)
-+    u_cons = []
-+    for c in u_cons_list:
-+        u_cons.append(c['name'])
-+    if UC_NAME not in u_cons:
-+        op.create_unique_constraint(
-         name=UC_NAME,
-         source=TABLE_NAME,
-         local_cols=['agent_type', 'host']
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/2eeaf963a447_floatingip_status.py.orig	2016-04-22 23:41:17.060181778 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/2eeaf963a447_floatingip_status.py	2016-04-22 23:57:26.134124564 -0700
-@@ -38,11 +38,20 @@
-         # did not create the floatingips table.
-         return
- 
--    op.add_column('floatingips',
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    col_names_list = insp.get_columns('floatingips')
-+    col_names = []
-+    for c in col_names_list:
-+        col_names.append(c['name'])
-+
-+    if 'last_known_router_id' not in col_names:
-+        op.add_column('floatingips',
-                   sa.Column('last_known_router_id',
-                             sa.String(length=36),
-                             nullable=True))
--    op.add_column('floatingips',
-+    if 'status' not in col_names:
-+        op.add_column('floatingips',
-                   sa.Column('status',
-                             sa.String(length=16),
-                             nullable=True))
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/2447ad0e9585_add_ipv6_mode_props.py.orig	2016-04-22 23:42:16.956052992 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/2447ad0e9585_add_ipv6_mode_props.py	2016-04-22 23:54:33.628120696 -0700
-@@ -37,7 +37,15 @@
-                    % ('slaac', 'dhcpv6-stateful', 'dhcpv6-stateless'))
-         op.execute("CREATE TYPE ipv6_address_modes AS ENUM ('%s', '%s', '%s')"
-                    % ('slaac', 'dhcpv6-stateful', 'dhcpv6-stateless'))
--    op.add_column('subnets',
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    col_names_list = insp.get_columns('subnets')
-+    col_names = []
-+    for c in col_names_list:
-+        col_names.append(c['name'])
-+
-+    if 'ipv6_ra_mode' not in col_names:
-+        op.add_column('subnets',
-                   sa.Column('ipv6_ra_mode',
-                             sa.Enum('slaac',
-                                     'dhcpv6-stateful',
-@@ -45,7 +53,8 @@
-                                     name='ipv6_ra_modes'),
-                             nullable=True)
-                   )
--    op.add_column('subnets',
-+    if 'ipv6_address_mode' not in col_names:
-+        op.add_column('subnets',
-                   sa.Column('ipv6_address_mode',
-                             sa.Enum('slaac',
-                                     'dhcpv6-stateful',
---- neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/544673ac99ab_add_router_port_table.py.orig	2016-04-22 23:43:11.770727387 -0700
-+++ neutron-2015.1.2/neutron/db/migration/alembic_migrations/versions/544673ac99ab_add_router_port_table.py	2016-04-22 23:45:53.016161819 -0700
-@@ -40,7 +40,10 @@
- 
- 
- def upgrade():
--    op.create_table(
-+    bind = op.get_bind()
-+    insp = sa.engine.reflection.Inspector.from_engine(bind)
-+    if 'routerports' not in insp.get_table_names():
-+        op.create_table(
-         'routerports',
-         sa.Column('router_id', sa.String(length=36), nullable=False),
-         sa.Column('port_id', sa.String(length=36), nullable=False),
-@@ -59,6 +59,6 @@
-             ['ports.id'],
-             ondelete='CASCADE'
-         ),
--    )
-+        )
-
--    op.execute(SQL_STATEMENT)
-+        op.execute(SQL_STATEMENT)
-