summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGary Kotton <gkotton@vmware.com>2015-03-10 03:30:40 -0700
committerGary Kotton <gkotton@vmware.com>2015-03-13 02:18:51 -0700
commit48b499d3a7eddd6af88580ff1573f942dfda05b4 (patch)
treee28ef097ceae00640d1263166b3085b276ccbf3e
parentdd48494877f53520ed848ab1cc3b33161ee677cc (diff)
downloadnova-48b499d3a7eddd6af88580ff1573f942dfda05b4.tar.gz
libvirt: remove unnecessary flavor parameter
The instance now has the flavor as part of the object. There is no reason to pass this to: - _get_guest_config_meta - _get_guest_xml The unit test test_get_guest_config was also updated. The flavor in the test has 3 disks and these need to be validated correctly. Change-Id: I1170aefcd4912e091f4b85e91d351b4372522fa9
-rw-r--r--nova/tests/unit/virt/libvirt/test_driver.py31
-rw-r--r--nova/virt/libvirt/driver.py19
2 files changed, 22 insertions, 28 deletions
diff --git a/nova/tests/unit/virt/libvirt/test_driver.py b/nova/tests/unit/virt/libvirt/test_driver.py
index af196d794c..973c4423be 100644
--- a/nova/tests/unit/virt/libvirt/test_driver.py
+++ b/nova/tests/unit/virt/libvirt/test_driver.py
@@ -937,6 +937,7 @@ class LibvirtConnTestCase(test.NoDBTestCase):
swap=33550336,
extra_specs={})
instance_ref = objects.Instance(**test_instance)
+ instance_ref.flavor = flavor
image_meta = {}
disk_info = blockinfo.get_disk_info(CONF.libvirt.virt_type,
@@ -946,7 +947,7 @@ class LibvirtConnTestCase(test.NoDBTestCase):
cfg = drvr._get_guest_config(instance_ref,
_fake_network_info(self.stubs, 1),
{}, disk_info,
- context=ctxt, flavor=flavor)
+ context=ctxt)
self.assertEqual(cfg.uuid, instance_ref["uuid"])
self.assertEqual(2, len(cfg.features))
@@ -959,24 +960,26 @@ class LibvirtConnTestCase(test.NoDBTestCase):
self.assertEqual(cfg.os_type, vm_mode.HVM)
self.assertEqual(cfg.os_boot_dev, ["hd"])
self.assertIsNone(cfg.os_root)
- self.assertEqual(len(cfg.devices), 9)
+ self.assertEqual(len(cfg.devices), 10)
self.assertIsInstance(cfg.devices[0],
vconfig.LibvirtConfigGuestDisk)
self.assertIsInstance(cfg.devices[1],
vconfig.LibvirtConfigGuestDisk)
self.assertIsInstance(cfg.devices[2],
- vconfig.LibvirtConfigGuestInterface)
+ vconfig.LibvirtConfigGuestDisk)
self.assertIsInstance(cfg.devices[3],
- vconfig.LibvirtConfigGuestSerial)
+ vconfig.LibvirtConfigGuestInterface)
self.assertIsInstance(cfg.devices[4],
vconfig.LibvirtConfigGuestSerial)
self.assertIsInstance(cfg.devices[5],
- vconfig.LibvirtConfigGuestInput)
+ vconfig.LibvirtConfigGuestSerial)
self.assertIsInstance(cfg.devices[6],
- vconfig.LibvirtConfigGuestGraphics)
+ vconfig.LibvirtConfigGuestInput)
self.assertIsInstance(cfg.devices[7],
- vconfig.LibvirtConfigGuestVideo)
+ vconfig.LibvirtConfigGuestGraphics)
self.assertIsInstance(cfg.devices[8],
+ vconfig.LibvirtConfigGuestVideo)
+ self.assertIsInstance(cfg.devices[9],
vconfig.LibvirtConfigMemoryBalloon)
self.assertEqual(len(cfg.metadata), 1)
self.assertIsInstance(cfg.metadata[0],
@@ -1022,11 +1025,9 @@ class LibvirtConnTestCase(test.NoDBTestCase):
self.flags(virt_type='lxc', group='libvirt')
drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)
instance_ref = objects.Instance(**self.test_instance)
- flavor = instance_ref.get_flavor()
-
cfg = drvr._get_guest_config(instance_ref,
_fake_network_info(self.stubs, 1),
- None, {'mapping': {}}, flavor=flavor)
+ None, {'mapping': {}})
self.assertEqual(instance_ref["uuid"], cfg.uuid)
self.assertEqual(2 * units.Mi, cfg.memory)
self.assertEqual(1, cfg.vcpus)
@@ -1048,11 +1049,9 @@ class LibvirtConnTestCase(test.NoDBTestCase):
self.flags(gid_maps=['0:1000:100'], group='libvirt')
drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)
instance_ref = objects.Instance(**self.test_instance)
- flavor = instance_ref.get_flavor()
-
cfg = drvr._get_guest_config(instance_ref,
_fake_network_info(self.stubs, 1),
- None, {'mapping': {}}, flavor=flavor)
+ None, {'mapping': {}})
self.assertEqual(instance_ref["uuid"], cfg.uuid)
self.assertEqual(2 * units.Mi, cfg.memory)
self.assertEqual(1, cfg.vcpus)
@@ -11586,7 +11585,6 @@ Active: 8381604 kB
self.flags(images_type='ploop', group='libvirt')
drvr = libvirt_driver.LibvirtDriver(fake.FakeVirtAPI(), True)
instance_ref = objects.Instance(**self.test_instance)
- flavor = instance_ref.get_flavor()
image_meta = {}
@@ -11596,7 +11594,7 @@ Active: 8381604 kB
cfg = drvr._get_guest_config(instance_ref,
_fake_network_info(self.stubs, 1),
- None, disk_info, flavor=flavor)
+ None, disk_info)
self.assertEqual("parallels", cfg.virt_type)
self.assertEqual(instance_ref["uuid"], cfg.uuid)
self.assertEqual(2 * units.Mi, cfg.memory)
@@ -11624,11 +11622,10 @@ Active: 8381604 kB
ct_instance = self.test_instance.copy()
ct_instance["vm_mode"] = vm_mode.EXE
instance_ref = objects.Instance(**ct_instance)
- flavor = instance_ref.get_flavor()
cfg = drvr._get_guest_config(instance_ref,
_fake_network_info(self.stubs, 1),
- None, {'mapping': {}}, flavor=flavor)
+ None, {'mapping': {}})
self.assertEqual("parallels", cfg.virt_type)
self.assertEqual(instance_ref["uuid"], cfg.uuid)
self.assertEqual(2 * units.Mi, cfg.memory)
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index e6f4292443..c425b4d8f8 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -2349,8 +2349,7 @@ class LibvirtDriver(driver.ComputeDriver):
xml = self._get_guest_xml(context, instance, network_info,
disk_info, image_meta,
block_device_info=block_device_info,
- write_to_disk=True,
- flavor=instance.flavor)
+ write_to_disk=True)
self._create_domain_and_network(context, xml, instance, network_info,
disk_info,
block_device_info=block_device_info)
@@ -3277,7 +3276,7 @@ class LibvirtDriver(driver.ComputeDriver):
return dev
- def _get_guest_config_meta(self, context, instance, flavor):
+ def _get_guest_config_meta(self, context, instance):
"""Get metadata config for guest."""
meta = vconfig.LibvirtConfigGuestMetaNovaInstance()
@@ -3298,6 +3297,7 @@ class LibvirtDriver(driver.ComputeDriver):
meta.owner = ometa
fmeta = vconfig.LibvirtConfigGuestMetaNovaFlavor()
+ flavor = instance.flavor
fmeta.name = flavor.name
fmeta.memory = flavor.memory_mb
fmeta.vcpus = flavor.vcpus
@@ -3939,15 +3939,14 @@ class LibvirtDriver(driver.ComputeDriver):
def _get_guest_config(self, instance, network_info, image_meta,
disk_info, rescue=None, block_device_info=None,
- context=None, flavor=None):
+ context=None):
"""Get config data for parameters.
:param rescue: optional dictionary that should contain the key
'ramdisk_id' if a ramdisk is needed for the rescue image and
'kernel_id' if a kernel is needed for the rescue image.
"""
- ctxt = context or nova_context.get_admin_context()
- flavor = self._get_flavor(ctxt, instance, flavor)
+ flavor = instance.flavor
inst_path = libvirt_utils.get_instance_path(instance)
disk_mapping = disk_info['mapping']
img_meta_prop = image_meta.get('properties', {}) if image_meta else {}
@@ -3974,8 +3973,7 @@ class LibvirtDriver(driver.ComputeDriver):
instance.numa_topology, guest_numa_config.numatune)
guest.metadata.append(self._get_guest_config_meta(context,
- instance,
- flavor))
+ instance))
guest.idmaps = self._get_guest_idmaps()
self._update_guest_cputune(guest, flavor, virt_type)
@@ -4134,8 +4132,7 @@ class LibvirtDriver(driver.ComputeDriver):
def _get_guest_xml(self, context, instance, network_info, disk_info,
image_meta, rescue=None,
- block_device_info=None, write_to_disk=False,
- flavor=None):
+ block_device_info=None, write_to_disk=False):
# NOTE(danms): Stringifying a NetworkInfo will take a lock. Do
# this ahead of time so that we don't acquire it while also
# holding the logging lock.
@@ -4153,7 +4150,7 @@ class LibvirtDriver(driver.ComputeDriver):
LOG.debug(strutils.mask_password(msg), instance=instance)
conf = self._get_guest_config(instance, network_info, image_meta,
disk_info, rescue, block_device_info,
- context, flavor=flavor)
+ context)
xml = conf.to_xml()
if write_to_disk: