optimized 'find_instance()'
The function nova.servers.list() will return a huge context in the large infrastructure. We can use nova.servers.get() instead of it. Change-Id: If922c31e8aff27bfbc475c63083ee561ee7f1f67
This commit is contained in:
@@ -73,15 +73,7 @@ class NovaHelper(object):
|
|||||||
return self.nova.availability_zones.list(detailed=True)
|
return self.nova.availability_zones.list(detailed=True)
|
||||||
|
|
||||||
def find_instance(self, instance_id):
|
def find_instance(self, instance_id):
|
||||||
search_opts = {'all_tenants': True}
|
return self.nova.servers.get(instance_id)
|
||||||
instances = self.nova.servers.list(detailed=True,
|
|
||||||
search_opts=search_opts)
|
|
||||||
instance = None
|
|
||||||
for _instance in instances:
|
|
||||||
if _instance.id == instance_id:
|
|
||||||
instance = _instance
|
|
||||||
break
|
|
||||||
return instance
|
|
||||||
|
|
||||||
def wait_for_volume_status(self, volume, status, timeout=60,
|
def wait_for_volume_status(self, volume, status, timeout=60,
|
||||||
poll_interval=1):
|
poll_interval=1):
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ class TestNovaHelper(base.TestCase):
|
|||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def fake_nova_find_list(nova_util, find=None, list=None):
|
def fake_nova_find_list(nova_util, find=None, list=None):
|
||||||
nova_util.nova.servers.find.return_value = find
|
nova_util.nova.servers.get.return_value = find
|
||||||
if list is None:
|
if list is None:
|
||||||
nova_util.nova.servers.list.return_value = []
|
nova_util.nova.servers.list.return_value = []
|
||||||
else:
|
else:
|
||||||
@@ -102,6 +102,8 @@ class TestNovaHelper(base.TestCase):
|
|||||||
)
|
)
|
||||||
self.assertTrue(is_success)
|
self.assertTrue(is_success)
|
||||||
|
|
||||||
|
setattr(server, 'OS-EXT-SRV-ATTR:host',
|
||||||
|
self.source_node)
|
||||||
self.fake_nova_find_list(nova_util, find=server, list=None)
|
self.fake_nova_find_list(nova_util, find=server, list=None)
|
||||||
is_success = nova_util.live_migrate_instance(
|
is_success = nova_util.live_migrate_instance(
|
||||||
self.instance_uuid, self.destination_node
|
self.instance_uuid, self.destination_node
|
||||||
|
|||||||
Reference in New Issue
Block a user