diff options
| author | Daniel P. Berrange <berrange@redhat.com> | 2012-12-11 17:37:22 +0000 |
|---|---|---|
| committer | Daniel P. Berrange <berrange@redhat.com> | 2012-12-11 20:01:08 +0000 |
| commit | e2bf709a7f1b5a375e359f4a75512c76b36216a7 (patch) | |
| tree | 9ab4eff03de45834ac2533ecea5c6240ae25a396 | |
| parent | d407ca3c90af30b57d57d522728274a0e219ee0d (diff) | |
Add support for parsing the <uuid> from libvirt host capabilities
The libvirt host capabilities provide a <uuid> element which
uniquely identifies the host platform.
Change-Id: Ic619a24b4b90c757b868aa78396d6cdee56ccb4b
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
| -rw-r--r-- | nova/tests/test_libvirt_config.py | 2 | ||||
| -rw-r--r-- | nova/virt/libvirt/config.py | 5 |
2 files changed, 7 insertions, 0 deletions
diff --git a/nova/tests/test_libvirt_config.py b/nova/tests/test_libvirt_config.py index ed01cc4fd..e5ed1b528 100644 --- a/nova/tests/test_libvirt_config.py +++ b/nova/tests/test_libvirt_config.py @@ -65,6 +65,7 @@ class LibvirtConfigCapsTest(LibvirtConfigBaseTest): xmlin = """ <capabilities> <host> + <uuid>c7a5fdbd-edaf-9455-926a-d65c16db1809</uuid> <cpu> <arch>x86_64</arch> <model>Opteron_G3</model> @@ -88,6 +89,7 @@ class LibvirtConfigCapsTest(LibvirtConfigBaseTest): obj.parse_str(xmlin) self.assertEqual(type(obj.host), config.LibvirtConfigCapsHost) + self.assertEqual(obj.host.uuid, "c7a5fdbd-edaf-9455-926a-d65c16db1809") xmlout = obj.to_xml() diff --git a/nova/virt/libvirt/config.py b/nova/virt/libvirt/config.py index 14d940269..7e27f3925 100644 --- a/nova/virt/libvirt/config.py +++ b/nova/virt/libvirt/config.py @@ -106,6 +106,7 @@ class LibvirtConfigCapsHost(LibvirtConfigObject): **kwargs) self.cpu = None + self.uuid = None def parse_dom(self, xmldoc): super(LibvirtConfigCapsHost, self).parse_dom(xmldoc) @@ -115,10 +116,14 @@ class LibvirtConfigCapsHost(LibvirtConfigObject): cpu = LibvirtConfigCPU() cpu.parse_dom(c) self.cpu = cpu + elif c.tag == "uuid": + self.uuid = c.text def format_dom(self): caps = super(LibvirtConfigCapsHost, self).format_dom() + if self.uuid: + caps.append(self._text_node("uuid", self.uuid)) if self.cpu: caps.append(self.cpu.format_dom()) |
