Merge "Allow specification of the libvirt guest CPU model per host"
This commit is contained in:
@@ -614,6 +614,76 @@ class LibvirtConnTestCase(test.TestCase):
|
|||||||
config.LibvirtConfigGuestDisk)
|
config.LibvirtConfigGuestDisk)
|
||||||
self.assertEquals(cfg.devices[3].target_dev, 'vdd')
|
self.assertEquals(cfg.devices[3].target_dev, 'vdd')
|
||||||
|
|
||||||
|
def test_get_guest_cpu_config_none(self):
|
||||||
|
conn = libvirt_driver.LibvirtDriver(True)
|
||||||
|
instance_ref = db.instance_create(self.context, self.test_instance)
|
||||||
|
|
||||||
|
conf = conn.get_guest_config(instance_ref,
|
||||||
|
_fake_network_info(self.stubs, 1),
|
||||||
|
None, None)
|
||||||
|
self.assertEquals(conf.cpu, None)
|
||||||
|
|
||||||
|
@test.skip_if(missing_libvirt(), "Test requires libvirt")
|
||||||
|
def test_get_guest_cpu_config_host_passthrough_new(self):
|
||||||
|
def get_lib_version_stub(self):
|
||||||
|
return (0 * 1000 * 1000) + (9 * 1000) + 11
|
||||||
|
|
||||||
|
self.stubs.Set(libvirt.virConnect,
|
||||||
|
"getLibVersion",
|
||||||
|
get_lib_version_stub)
|
||||||
|
conn = libvirt_driver.LibvirtDriver(True)
|
||||||
|
instance_ref = db.instance_create(self.context, self.test_instance)
|
||||||
|
|
||||||
|
self.flags(libvirt_cpu_mode="host-passthrough")
|
||||||
|
conf = conn.get_guest_config(instance_ref,
|
||||||
|
_fake_network_info(self.stubs, 1),
|
||||||
|
None, None)
|
||||||
|
self.assertEquals(type(conf.cpu),
|
||||||
|
config.LibvirtConfigGuestCPU)
|
||||||
|
self.assertEquals(conf.cpu.mode, "host-passthrough")
|
||||||
|
self.assertEquals(conf.cpu.model, None)
|
||||||
|
|
||||||
|
@test.skip_if(missing_libvirt(), "Test requires libvirt")
|
||||||
|
def test_get_guest_cpu_config_host_model_new(self):
|
||||||
|
def get_lib_version_stub(self):
|
||||||
|
return (0 * 1000 * 1000) + (9 * 1000) + 11
|
||||||
|
|
||||||
|
self.stubs.Set(libvirt.virConnect,
|
||||||
|
"getLibVersion",
|
||||||
|
get_lib_version_stub)
|
||||||
|
conn = libvirt_driver.LibvirtDriver(True)
|
||||||
|
instance_ref = db.instance_create(self.context, self.test_instance)
|
||||||
|
|
||||||
|
self.flags(libvirt_cpu_mode="host-model")
|
||||||
|
conf = conn.get_guest_config(instance_ref,
|
||||||
|
_fake_network_info(self.stubs, 1),
|
||||||
|
None, None)
|
||||||
|
self.assertEquals(type(conf.cpu),
|
||||||
|
config.LibvirtConfigGuestCPU)
|
||||||
|
self.assertEquals(conf.cpu.mode, "host-model")
|
||||||
|
self.assertEquals(conf.cpu.model, None)
|
||||||
|
|
||||||
|
@test.skip_if(missing_libvirt(), "Test requires libvirt")
|
||||||
|
def test_get_guest_cpu_config_custom_new(self):
|
||||||
|
def get_lib_version_stub(self):
|
||||||
|
return (0 * 1000 * 1000) + (9 * 1000) + 11
|
||||||
|
|
||||||
|
self.stubs.Set(libvirt.virConnect,
|
||||||
|
"getLibVersion",
|
||||||
|
get_lib_version_stub)
|
||||||
|
conn = libvirt_driver.LibvirtDriver(True)
|
||||||
|
instance_ref = db.instance_create(self.context, self.test_instance)
|
||||||
|
|
||||||
|
self.flags(libvirt_cpu_mode="custom")
|
||||||
|
self.flags(libvirt_cpu_model="Penryn")
|
||||||
|
conf = conn.get_guest_config(instance_ref,
|
||||||
|
_fake_network_info(self.stubs, 1),
|
||||||
|
None, None)
|
||||||
|
self.assertEquals(type(conf.cpu),
|
||||||
|
config.LibvirtConfigGuestCPU)
|
||||||
|
self.assertEquals(conf.cpu.mode, "custom")
|
||||||
|
self.assertEquals(conf.cpu.model, "Penryn")
|
||||||
|
|
||||||
def test_xml_and_uri_no_ramdisk_no_kernel(self):
|
def test_xml_and_uri_no_ramdisk_no_kernel(self):
|
||||||
instance_data = dict(self.test_instance)
|
instance_data = dict(self.test_instance)
|
||||||
self._check_xml_and_uri(instance_data,
|
self._check_xml_and_uri(instance_data,
|
||||||
|
|||||||
Reference in New Issue
Block a user