from nova.api.openstack import extensions
from nova.api.openstack import wsgi
from nova.api.openstack import xmlutil
+from nova import compute
from nova import log as logging
from nova import network
"""
def __init__(self):
+ self.compute_api = compute.API()
self.network_api = network.API()
super(ServerVirtualInterfaceController, self).__init__()
"""Returns a list of VIFs, transformed through entity_maker."""
context = req.environ['nova.context']
- vifs = self.network_api.get_vifs_by_instance(context, server_id)
+ instance = self.compute_api.get(context, server_id)
+ vifs = self.network_api.get_vifs_by_instance(context, instance)
limited_list = common.limited(vifs, req)
res = [entity_maker(context, vif) for vif in limited_list]
return {'virtual_interfaces': res}
{'method': 'get_floating_ips_by_fixed_address',
'args': {'fixed_address': fixed_address}})
- def get_vifs_by_instance(self, context, instance_id):
+ def get_vifs_by_instance(self, context, instance):
+ # NOTE(vish): When the db calls are converted to store network
+ # data by instance_uuid, this should pass uuid instead.
return rpc.call(context,
FLAGS.network_topic,
{'method': 'get_vifs_by_instance',
- 'args': {'instance_id': instance_id}})
+ 'args': {'instance_id': instance['id']}})
def allocate_floating_ip(self, context, pool=None):
"""Adds a floating ip to a project from a pool. (allocates)"""
from nova.api.openstack.compute.contrib import virtual_interfaces
from nova.api.openstack import wsgi
+from nova import compute
from nova import network
from nova import test
from nova.tests.api.openstack import fakes
-def get_vifs_by_instance(self, context, server_id):
+FAKE_UUID = 'aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa'
+
+
+def compute_api_get(self, context, instance_id):
+ return dict(uuid=FAKE_UUID, id=instance_id, instance_type_id=1, host='bob')
+
+
+def get_vifs_by_instance(self, context, instance_id):
return [{'uuid': '00000000-0000-0000-0000-00000000000000000',
'address': '00-00-00-00-00-00'},
{'uuid': '11111111-1111-1111-1111-11111111111111111',
def setUp(self):
super(ServerVirtualInterfaceTest, self).setUp()
self.controller = virtual_interfaces.ServerVirtualInterfaceController()
+ self.stubs.Set(compute.api.API, "get",
+ compute_api_get)
self.stubs.Set(network.api.API, "get_vifs_by_instance",
get_vifs_by_instance)