add instance_type_extra_specs to instances
Adding instance_type_extra_specs as instance['extra_specs'] so that this info is passed to driver.spawn() later on. This is needed by the baremetal driver. Change-Id: Icbfba835c9a060193597cc00a7c0e404b7ccfdd4
This commit is contained in:
@@ -304,6 +304,41 @@ class DbApiTestCase(test.TestCase):
|
|||||||
self.assertEquals("building", old_ref["vm_state"])
|
self.assertEquals("building", old_ref["vm_state"])
|
||||||
self.assertEquals("needscoffee", new_ref["vm_state"])
|
self.assertEquals("needscoffee", new_ref["vm_state"])
|
||||||
|
|
||||||
|
def test_instance_update_with_extra_specs(self):
|
||||||
|
"""Ensure _extra_specs are returned from _instance_update"""
|
||||||
|
ctxt = context.get_admin_context()
|
||||||
|
|
||||||
|
# create a flavor
|
||||||
|
inst_type_dict = dict(
|
||||||
|
name="test_flavor",
|
||||||
|
memory_mb=1,
|
||||||
|
vcpus=1,
|
||||||
|
root_gb=1,
|
||||||
|
ephemeral_gb=1,
|
||||||
|
flavorid=105)
|
||||||
|
inst_type_ref = db.instance_type_create(ctxt, inst_type_dict)
|
||||||
|
|
||||||
|
# add some extra spec to our flavor
|
||||||
|
spec = {'test_spec': 'foo'}
|
||||||
|
db.instance_type_extra_specs_update_or_create(
|
||||||
|
ctxt,
|
||||||
|
inst_type_ref['flavorid'],
|
||||||
|
spec)
|
||||||
|
|
||||||
|
# create instance, just populates db, doesn't pull extra_spec
|
||||||
|
instance = db.instance_create(
|
||||||
|
ctxt,
|
||||||
|
{'instance_type_id': inst_type_ref['id']})
|
||||||
|
self.assertNotIn('extra_specs', instance)
|
||||||
|
|
||||||
|
# update instance, used when starting instance to set state, etc
|
||||||
|
(old_ref, new_ref) = db.instance_update_and_get_original(
|
||||||
|
ctxt,
|
||||||
|
instance['uuid'],
|
||||||
|
{})
|
||||||
|
self.assertEquals(spec, old_ref['extra_specs'])
|
||||||
|
self.assertEquals(spec, new_ref['extra_specs'])
|
||||||
|
|
||||||
def test_instance_fault_create(self):
|
def test_instance_fault_create(self):
|
||||||
"""Ensure we can create an instance fault"""
|
"""Ensure we can create an instance fault"""
|
||||||
ctxt = context.get_admin_context()
|
ctxt = context.get_admin_context()
|
||||||
|
|||||||
Reference in New Issue
Block a user