From 720b96363b8c2973d43c763ccaf4e213e0e2e02d Mon Sep 17 00:00:00 2001 From: "Daniel P. Berrange" Date: Wed, 7 Mar 2012 13:10:07 -0500 Subject: Introduce a class for storing libvirt snapshot configuration Extend the libvirt config APIs to include a new class LibvirtConfigGuestSnapshot for storing information about guest snapshots blueprint libvirt-xml-config-apis Change-Id: Icc54f6f5cf41b05d904659e0a337bddb4bef5733 Signed-off-by: Daniel P. Berrange --- nova/tests/test_libvirt_config.py | 13 +++++++++++++ nova/virt/libvirt/config.py | 15 +++++++++++++++ 2 files changed, 28 insertions(+) diff --git a/nova/tests/test_libvirt_config.py b/nova/tests/test_libvirt_config.py index 8d6ede1be..b910849a5 100644 --- a/nova/tests/test_libvirt_config.py +++ b/nova/tests/test_libvirt_config.py @@ -398,3 +398,16 @@ class LibvirtConfigCPUTest(LibvirtConfigBaseTest): AMD """) + + +class LibvirtConfigGuestSnapshotTest(LibvirtConfigBaseTest): + + def test_config_snapshot(self): + obj = config.LibvirtConfigGuestSnapshot() + obj.name = "Demo" + + xml = obj.to_xml() + self.assertXmlEqual(xml, """ + + Demo + """) diff --git a/nova/virt/libvirt/config.py b/nova/virt/libvirt/config.py index e4f99a7ba..63499eaf8 100644 --- a/nova/virt/libvirt/config.py +++ b/nova/virt/libvirt/config.py @@ -396,3 +396,18 @@ class LibvirtConfigCPU(LibvirtConfigObject): name=f)) return cpu + + +class LibvirtConfigGuestSnapshot(LibvirtConfigObject): + + def __init__(self, **kwargs): + super(LibvirtConfigGuestSnapshot, self).__init__( + root_name="domainsnapshot", + **kwargs) + + self.name = None + + def format_dom(self): + ss = super(LibvirtConfigGuestSnapshot, self).format_dom() + ss.append(self._text_node("name", self.name)) + return ss -- cgit