Remove conversion from dict to object from xenapi live_migration
Since mitaka checks before live-migration operates migrate_data objects not dicts. This patch removes check and conversion from check_can_live_migrate_source. Change-Id: Ic1959c5e733014f2e9c16c3c5d270142ac8a966d
This commit is contained in:
parent
c6a188aaf4
commit
ee9f631f69
@ -3492,16 +3492,13 @@ class XenAPILiveMigrateTestCase(stubs.XenAPITestBaseNoDB):
|
|||||||
|
|
||||||
self._add_default_live_migrate_stubs(self.conn)
|
self._add_default_live_migrate_stubs(self.conn)
|
||||||
|
|
||||||
dest_check_data = {'block_migration': True,
|
dest_check_data = objects.XenapiLiveMigrateData(
|
||||||
'is_volume_backed': False,
|
block_migration=True, is_volume_backed=False,
|
||||||
'migrate_data': {
|
destination_sr_ref=None, migrate_send_data={'key': 'value'})
|
||||||
'destination_sr_ref': None,
|
|
||||||
'migrate_send_data': {'key': 'value'}
|
|
||||||
}}
|
|
||||||
result = self.conn.check_can_live_migrate_source(self.context,
|
result = self.conn.check_can_live_migrate_source(self.context,
|
||||||
{'host': 'host'},
|
{'host': 'host'},
|
||||||
dest_check_data)
|
dest_check_data)
|
||||||
self.assertEqual(dest_check_data, result.to_legacy_dict())
|
self.assertEqual(dest_check_data, result)
|
||||||
|
|
||||||
def test_check_can_live_migrate_source_with_block_migrate_iscsi(self):
|
def test_check_can_live_migrate_source_with_block_migrate_iscsi(self):
|
||||||
stubs.stubout_session(self.stubs, stubs.FakeSessionForVMTests)
|
stubs.stubout_session(self.stubs, stubs.FakeSessionForVMTests)
|
||||||
@ -3558,12 +3555,9 @@ class XenAPILiveMigrateTestCase(stubs.XenAPITestBaseNoDB):
|
|||||||
|
|
||||||
self._add_default_live_migrate_stubs(self.conn)
|
self._add_default_live_migrate_stubs(self.conn)
|
||||||
|
|
||||||
dest_check_data = {'block_migration': True,
|
dest_check_data = objects.XenapiLiveMigrateData(
|
||||||
'is_volume_backed': True,
|
block_migration=True, is_volume_backed=True,
|
||||||
'migrate_data': {
|
migrate_send_data={'key': 'value'}, destination_sr_ref=None)
|
||||||
'destination_sr_ref': None,
|
|
||||||
'migrate_send_data': {'key': 'value'}
|
|
||||||
}}
|
|
||||||
self.assertRaises(exception.MigrationError,
|
self.assertRaises(exception.MigrationError,
|
||||||
self.conn.check_can_live_migrate_source,
|
self.conn.check_can_live_migrate_source,
|
||||||
self.context,
|
self.context,
|
||||||
|
@ -47,7 +47,6 @@ from nova import context as nova_context
|
|||||||
from nova import exception
|
from nova import exception
|
||||||
from nova.i18n import _, _LE, _LI, _LW
|
from nova.i18n import _, _LE, _LI, _LW
|
||||||
from nova import objects
|
from nova import objects
|
||||||
from nova.objects import migrate_data as migrate_data_obj
|
|
||||||
from nova.pci import manager as pci_manager
|
from nova.pci import manager as pci_manager
|
||||||
from nova import utils
|
from nova import utils
|
||||||
from nova.virt import configdrive
|
from nova.virt import configdrive
|
||||||
@ -2246,11 +2245,6 @@ class VMOps(object):
|
|||||||
raise exception.MigrationError(reason=_('XAPI supporting '
|
raise exception.MigrationError(reason=_('XAPI supporting '
|
||||||
'relax-xsm-sr-check=true required'))
|
'relax-xsm-sr-check=true required'))
|
||||||
|
|
||||||
if not isinstance(dest_check_data, migrate_data_obj.LiveMigrateData):
|
|
||||||
obj = objects.XenapiLiveMigrateData()
|
|
||||||
obj.from_legacy_dict(dest_check_data)
|
|
||||||
dest_check_data = obj
|
|
||||||
|
|
||||||
if ('block_migration' in dest_check_data and
|
if ('block_migration' in dest_check_data and
|
||||||
dest_check_data.block_migration):
|
dest_check_data.block_migration):
|
||||||
vm_ref = self._get_vm_opaque_ref(instance_ref)
|
vm_ref = self._get_vm_opaque_ref(instance_ref)
|
||||||
|
Loading…
Reference in New Issue
Block a user