summaryrefslogtreecommitdiffstats
path: root/nova/virt
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-01-09 02:30:25 +0000
committerGerrit Code Review <review@openstack.org>2013-01-09 02:30:25 +0000
commit9026553e2f6af93fa8a15dbb9dd452f73d09ac1d (patch)
treeb1918359cfab380c382f36e4ad970cedcb0f3cac /nova/virt
parentdb3da2d95626ed25ed8fc925662a5a17dc7d32a2 (diff)
parent6fc00d34651858308c5b08fdabe8a0b9ce663e26 (diff)
Merge "Adds to manager init_host validation for instances location"
Diffstat (limited to 'nova/virt')
-rw-r--r--nova/virt/driver.py7
-rw-r--r--nova/virt/fake.py3
-rw-r--r--nova/virt/libvirt/driver.py4
3 files changed, 14 insertions, 0 deletions
diff --git a/nova/virt/driver.py b/nova/virt/driver.py
index f4fcaa33e..da4a9475c 100644
--- a/nova/virt/driver.py
+++ b/nova/virt/driver.py
@@ -167,6 +167,13 @@ class ComputeDriver(object):
# TODO(Vek): Need to pass context in for access to auth_token
raise NotImplementedError()
+ def list_instance_uuids(self):
+ """
+ Return the UUIDS of all the instances known to the virtualization
+ layer, as a list.
+ """
+ raise NotImplementedError()
+
def spawn(self, context, instance, image_meta, injected_files,
admin_password, network_info=None, block_device_info=None):
"""
diff --git a/nova/virt/fake.py b/nova/virt/fake.py
index 1b0e01369..348675fe2 100644
--- a/nova/virt/fake.py
+++ b/nova/virt/fake.py
@@ -398,6 +398,9 @@ class FakeDriver(driver.ComputeDriver):
def instance_on_disk(self, instance):
return False
+ def list_instance_uuids(self):
+ return []
+
class FakeVirtAPI(virtapi.VirtAPI):
def instance_update(self, context, instance_uuid, updates):
diff --git a/nova/virt/libvirt/driver.py b/nova/virt/libvirt/driver.py
index 660e41598..d90a34123 100644
--- a/nova/virt/libvirt/driver.py
+++ b/nova/virt/libvirt/driver.py
@@ -456,6 +456,10 @@ class LibvirtDriver(driver.ComputeDriver):
return names
+ def list_instance_uuids(self):
+ return [self._conn.lookupByName(name).UUIDString()
+ for name in self.list_instances()]
+
def plug_vifs(self, instance, network_info):
"""Plug VIFs into networks."""
for (network, mapping) in network_info: