diff --git a/nova/tests/unit/virt/ironic/utils.py b/nova/tests/unit/virt/ironic/utils.py index 185cbbf173..a521635197 100644 --- a/nova/tests/unit/virt/ironic/utils.py +++ b/nova/tests/unit/virt/ironic/utils.py @@ -31,6 +31,7 @@ TEST_IMAGE_UUID = "cccccccc-cccc-cccc-cccc-cccccccccccc" TEST_IMAGE_NAME = "test-image" TEST_FLAVOR_ID = 1 TEST_FLAVOR_NAME = "fake.flavor" +TEST_FLAVOR_FLAVORID = "iiiiiiii-iiii-iiii-iiii-iiiiiiiiiiii" TEST_FLAVOR_EXTRA_SPECS = { 'baremetal:deploy_kernel_id': 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa', 'baremetal:deploy_ramdisk_id': 'bbbbbbbb-bbbb-bbbb-bbbb-bbbbbbbbbbbb'} @@ -226,6 +227,8 @@ def get_test_instance_driver_metadata(**kw): properties={}) default_flavor_meta = driver.FlavorMeta( name=kw.get('flavor_name', TEST_FLAVOR_NAME), + flavorid=kw.get('flavor_flavorid', + TEST_FLAVOR_FLAVORID), memory_mb=kw.get('flavor_memorymb', TEST_FLAVOR_MEMORYMB), vcpus=kw.get('flavor_vcpus', TEST_FLAVOR_VCPUS), diff --git a/nova/tests/unit/virt/libvirt/test_config.py b/nova/tests/unit/virt/libvirt/test_config.py index 1d772f5432..90be09354e 100644 --- a/nova/tests/unit/virt/libvirt/test_config.py +++ b/nova/tests/unit/virt/libvirt/test_config.py @@ -4117,6 +4117,7 @@ class LibvirtConfigGuestMetadataNovaTest(LibvirtConfigBaseTest): flavor = config.LibvirtConfigGuestMetaNovaFlavor() flavor.name = "m1.lowgravity" + flavor.id = "f719a0dd-4b43-4efe-8336-48ef74099ad4" flavor.vcpus = 8 flavor.memory = 2048 flavor.swap = 10 @@ -4152,12 +4153,102 @@ class LibvirtConfigGuestMetadataNovaTest(LibvirtConfigBaseTest): moonbuggy 2009-02-13 23:31:30 - + 2048 50 10 10 8 + + + + buzz + moonshot + + + + + + + + + + + + + + + + """) + + def test_config_metadata_flavor_extra_specs(self): + meta = config.LibvirtConfigGuestMetaNovaInstance() + meta.package = "2014.2.3" + meta.name = "moonbuggy" + meta.creationTime = 1234567890 + meta.roottype = "image" + meta.rootid = "fe55c69a-8b2e-4bbc-811a-9ad2023a0426" + + owner = config.LibvirtConfigGuestMetaNovaOwner() + owner.userid = "3472c2a6-de91-4fb5-b618-42bc781ef670" + owner.username = "buzz" + owner.projectid = "f241e906-010e-4917-ae81-53f4fb8aa021" + owner.projectname = "moonshot" + + meta.owner = owner + + flavor = config.LibvirtConfigGuestMetaNovaFlavor() + flavor.name = "m1.lowgravity" + flavor.id = "f719a0dd-4b43-4efe-8336-48ef74099ad4" + flavor.vcpus = 8 + flavor.memory = 2048 + flavor.swap = 10 + flavor.disk = 50 + flavor.ephemeral = 10 + flavor.extra_specs = {"hw_rng:allowed": "true"} + + meta.flavor = flavor + + meta.ports = config.LibvirtConfigGuestMetaNovaPorts( + ports=[ + config.LibvirtConfigGuestMetaNovaPort( + '567a4527-b0e4-4d0a-bcc2-71fda37897f7', + ips=[ + config.LibvirtConfigGuestMetaNovaIp( + 'fixed', '192.168.1.1', '4'), + config.LibvirtConfigGuestMetaNovaIp( + 'fixed', 'fe80::f95c:b030:7094', '6'), + config.LibvirtConfigGuestMetaNovaIp( + 'floating', '11.22.33.44', '4')]), + config.LibvirtConfigGuestMetaNovaPort( + 'a3ca97e2-0cf9-4159-9bfc-afd55bc13ead', + ips=[ + config.LibvirtConfigGuestMetaNovaIp( + 'fixed', '10.0.0.1', '4'), + config.LibvirtConfigGuestMetaNovaIp( + 'fixed', 'fdf8:f53b:82e4::52', '6'), + config.LibvirtConfigGuestMetaNovaIp( + 'floating', '1.2.3.4', '4')])]) + + xml = meta.to_xml() + self.assertXmlEqual(xml, """ + + + moonbuggy + 2009-02-13 23:31:30 + + 2048 + 50 + 10 + 10 + 8 + + true +