Merge "Make build_requests.instance MediumText"
This commit is contained in:
commit
8478580a55
@ -0,0 +1,24 @@
|
||||
# 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.
|
||||
|
||||
from sqlalchemy import MetaData
|
||||
from sqlalchemy import Table
|
||||
|
||||
from nova.db.sqlalchemy import api_models
|
||||
|
||||
|
||||
def upgrade(migrate_engine):
|
||||
meta = MetaData()
|
||||
meta.bind = migrate_engine
|
||||
|
||||
build_requests = Table('build_requests', meta, autoload=True)
|
||||
build_requests.c.instance.alter(type=api_models.MediumText())
|
@ -241,7 +241,7 @@ class BuildRequest(API_BASE):
|
||||
id = Column(Integer, primary_key=True)
|
||||
instance_uuid = Column(String(36))
|
||||
project_id = Column(String(255), nullable=False)
|
||||
instance = Column(Text)
|
||||
instance = Column(MediumText())
|
||||
block_device_mappings = Column(MediumText())
|
||||
# TODO(alaski): Drop these from the db in Ocata
|
||||
# columns_to_drop = ['request_spec_id', 'user_id', 'display_name',
|
||||
|
@ -553,6 +553,24 @@ class NovaAPIMigrationsWalk(test_migrations.WalkVersionsMixin):
|
||||
self.assertEqual('quota_usages', fk['referred_table'])
|
||||
self.assertEqual(['id'], fk['referred_columns'])
|
||||
|
||||
def _pre_upgrade_028(self, engine):
|
||||
build_requests = db_utils.get_table(engine, 'build_requests')
|
||||
fake_build_req = {'id': 2021,
|
||||
'project_id': 'fake_proj_id',
|
||||
'instance': '{"uuid": "foo", "name": "bar"}'}
|
||||
build_requests.insert().execute(fake_build_req)
|
||||
|
||||
def _check_028(self, engine, data):
|
||||
build_requests = db_utils.get_table(engine, 'build_requests')
|
||||
if engine.name == 'mysql':
|
||||
self.assertIsInstance(build_requests.c.block_device_mappings.type,
|
||||
sqlalchemy.dialects.mysql.MEDIUMTEXT)
|
||||
|
||||
fake_build_req = build_requests.select(
|
||||
build_requests.c.id == 2021).execute().first()
|
||||
self.assertEqual('{"uuid": "foo", "name": "bar"}',
|
||||
fake_build_req.instance)
|
||||
|
||||
|
||||
class TestNovaAPIMigrationsWalkSQLite(NovaAPIMigrationsWalk,
|
||||
test_base.DbTestCase,
|
||||
|
Loading…
x
Reference in New Issue
Block a user