Merge "Add domain_id column for limit"
This commit is contained in:
commit
7ac1b3d4df
|
@ -0,0 +1,21 @@
|
|||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import sqlalchemy as sql
|
||||
|
||||
|
||||
def upgrade(migrate_engine):
|
||||
meta = sql.MetaData()
|
||||
meta.bind = migrate_engine
|
||||
|
||||
limit_table = sql.Table('limit', meta, autoload=True)
|
||||
limit_table.c.project_id.alter(nullable=True)
|
|
@ -0,0 +1,15 @@
|
|||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
|
||||
def upgrade(migrate_engine):
|
||||
pass
|
|
@ -0,0 +1,34 @@
|
|||
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
||||
# not use this file except in compliance with the License. You may obtain
|
||||
# a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
||||
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
||||
# License for the specific language governing permissions and limitations
|
||||
# under the License.
|
||||
|
||||
import sqlalchemy as sql
|
||||
|
||||
|
||||
def upgrade(migrate_engine):
|
||||
meta = sql.MetaData()
|
||||
meta.bind = migrate_engine
|
||||
|
||||
limit_table = sql.Table('limit', meta, autoload=True)
|
||||
domain_id = sql.Column('domain_id', sql.String(64), nullable=True)
|
||||
limit_table.create_column(domain_id)
|
||||
|
||||
if migrate_engine.name == 'sqlite':
|
||||
meta = sql.MetaData()
|
||||
meta.bind = migrate_engine
|
||||
# "limit_new" is the table created in 047 expand script for SQLite
|
||||
# case.
|
||||
try:
|
||||
limit_table_new = sql.Table('limit_new', meta, autoload=True)
|
||||
domain_id = sql.Column('domain_id', sql.String(64), nullable=True)
|
||||
limit_table_new.create_column(domain_id)
|
||||
except sql.exc.NoSuchTableError:
|
||||
pass
|
|
@ -3202,6 +3202,27 @@ class FullMigration(SqlMigrateBase, unit.TestCase):
|
|||
'created_at_int', 'created_at', 'expires_at_int', 'expires_at']
|
||||
)
|
||||
|
||||
def test_migration_055_add_domain_to_limit(self):
|
||||
self.expand(54)
|
||||
self.migrate(54)
|
||||
self.contract(54)
|
||||
|
||||
limit_table_name = 'limit'
|
||||
limit_table = sqlalchemy.Table(limit_table_name, self.metadata,
|
||||
autoload=True)
|
||||
self.assertFalse(hasattr(limit_table.c, 'domain_id'))
|
||||
|
||||
self.expand(55)
|
||||
self.migrate(55)
|
||||
self.contract(55)
|
||||
|
||||
self.assertTableColumns(
|
||||
limit_table_name,
|
||||
['id', 'project_id', 'service_id', 'region_id', 'resource_name',
|
||||
'resource_limit', 'description', 'internal_id',
|
||||
'registered_limit_id', 'domain_id'])
|
||||
self.assertTrue(limit_table.c.project_id.nullable)
|
||||
|
||||
|
||||
class MySQLOpportunisticFullMigration(FullMigration):
|
||||
FIXTURE = db_fixtures.MySQLOpportunisticFixture
|
||||
|
|
Loading…
Reference in New Issue