Merge "Make bdms primitive in rpcapi.terminate_instance"

This commit is contained in:
Jenkins
2012-11-01 15:42:46 +00:00
committed by Gerrit Code Review
3 changed files with 37 additions and 6 deletions

View File

@@ -518,8 +518,9 @@ class ComputeAPI(nova.openstack.common.rpc.proxy.RpcProxy):
def terminate_instance(self, ctxt, instance, bdms):
instance_p = jsonutils.to_primitive(instance)
bdms_p = jsonutils.to_primitive(bdms)
self.cast(ctxt, self.make_msg('terminate_instance',
instance=instance_p, bdms=bdms),
instance=instance_p, bdms=bdms_p),
topic=_compute_topic(self.topic, ctxt, None, instance),
version='2.4')

View File

@@ -1825,19 +1825,30 @@ class CloudTestCase(test.TestCase):
class BDM(object):
def __init__(self):
self.no_device = None
self.values = dict(snapshot_id=snapshots[0],
self.values = dict(id=1,
snapshot_id=snapshots[0],
volume_id=volumes[0],
virtual_name=None,
volume_size=1,
device_name='sda1',
delete_on_termination=False)
delete_on_termination=False,
connection_info='{"foo":"bar"}')
def __getattr__(self, name):
return self.values.get(name)
"""Properly delegate dotted lookups"""
if name in self.__dict__['values']:
return self.values.get(name)
try:
return self.__dict__[name]
except KeyError:
raise AttributeError
def __getitem__(self, key):
return self.values.get(key)
def iteritems(self):
return self.values.iteritems()
return [BDM()]
self.stubs.Set(db, 'block_device_mapping_get_all_by_instance',
@@ -1913,11 +1924,20 @@ class CloudTestCase(test.TestCase):
delete_on_termination=False)
def __getattr__(self, name):
return self.values.get(name)
"""Properly delegate dotted lookups"""
if name in self.__dict__['values']:
return self.values.get(name)
try:
return self.__dict__[name]
except KeyError:
raise AttributeError
def __getitem__(self, key):
return self.values.get(key)
def iteritems(self):
return self.values.iteritems()
return [BDM()]
self.stubs.Set(db, 'block_device_mapping_get_all_by_instance',

View File

@@ -722,14 +722,24 @@ class ServerActionsControllerTest(test.TestCase):
virtual_name=None,
volume_size=1,
device_name='vda',
snapshot_id=1,
delete_on_termination=False)
def __getattr__(self, name):
return self.values.get(name)
"""Properly delegate dotted lookups"""
if name in self.__dict__['values']:
return self.values.get(name)
try:
return self.__dict__[name]
except KeyError:
raise AttributeError
def __getitem__(self, key):
return self.values.get(key)
def iteritems(self):
return self.values.iteritems()
return [BDM()]
self.stubs.Set(db, 'block_device_mapping_get_all_by_instance',