Merge "libvirt: Change _compare_cpu to raise InvalidCPUInfo"
This commit is contained in:
commit
c270c48d09
@ -10251,7 +10251,7 @@ class LibvirtConnTestCase(test.NoDBTestCase,
|
||||
compute_info = {'cpu_info': 'asdf', 'disk_available_least': 1}
|
||||
|
||||
mock_cpu.side_effect = exception.InvalidCPUInfo(reason='foo')
|
||||
self.assertRaises(exception.InvalidCPUInfo,
|
||||
self.assertRaises(exception.MigrationPreCheckError,
|
||||
drvr.check_can_live_migrate_destination,
|
||||
self.context, instance_ref,
|
||||
compute_info, compute_info, False)
|
||||
@ -10328,7 +10328,7 @@ class LibvirtConnTestCase(test.NoDBTestCase,
|
||||
instance = objects.Instance(**self.test_instance)
|
||||
mock_compare.side_effect = fakelibvirt.libvirtError('cpu')
|
||||
conn = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), False)
|
||||
self.assertRaises(exception.MigrationPreCheckError,
|
||||
self.assertRaises(exception.InvalidCPUInfo,
|
||||
conn._compare_cpu, None,
|
||||
jsonutils.dumps(_fake_cpu_info),
|
||||
instance)
|
||||
|
@ -793,8 +793,7 @@ class LibvirtDriver(driver.ComputeDriver):
|
||||
cpu.add_feature(vconfig.LibvirtConfigCPUFeature(flag))
|
||||
try:
|
||||
self._compare_cpu(cpu, self._get_cpu_info(), None)
|
||||
except (exception.InvalidCPUInfo,
|
||||
exception.MigrationPreCheckError) as e:
|
||||
except exception.InvalidCPUInfo as e:
|
||||
msg = (_("Configured extra flag: %(flag)s it not correct, or "
|
||||
"the host CPU does not support this flag. Please "
|
||||
"correct the config and try again. %(e)s") % {
|
||||
@ -7973,11 +7972,14 @@ class LibvirtDriver(driver.ComputeDriver):
|
||||
(disk_available_gb * units.Ki) - CONF.reserved_host_disk_mb)
|
||||
|
||||
# Compare CPU
|
||||
if not instance.vcpu_model or not instance.vcpu_model.model:
|
||||
source_cpu_info = src_compute_info['cpu_info']
|
||||
self._compare_cpu(None, source_cpu_info, instance)
|
||||
else:
|
||||
self._compare_cpu(instance.vcpu_model, None, instance)
|
||||
try:
|
||||
if not instance.vcpu_model or not instance.vcpu_model.model:
|
||||
source_cpu_info = src_compute_info['cpu_info']
|
||||
self._compare_cpu(None, source_cpu_info, instance)
|
||||
else:
|
||||
self._compare_cpu(instance.vcpu_model, None, instance)
|
||||
except exception.InvalidCPUInfo as e:
|
||||
raise exception.MigrationPreCheckError(reason=e)
|
||||
|
||||
# Create file on storage, to be checked on source host
|
||||
filename = self._create_shared_storage_test_file(instance)
|
||||
@ -8284,7 +8286,7 @@ class LibvirtDriver(driver.ComputeDriver):
|
||||
return
|
||||
else:
|
||||
LOG.error(m, {'ret': e, 'u': u})
|
||||
raise exception.MigrationPreCheckError(
|
||||
raise exception.InvalidCPUInfo(
|
||||
reason=m % {'ret': e, 'u': u})
|
||||
|
||||
if ret <= 0:
|
||||
|
Loading…
x
Reference in New Issue
Block a user