On 04/21/2014 02:22 PM, shaohef(a)linux.vnet.ibm.com wrote:
From: ShaoHe Feng <shaohef(a)linux.vnet.ibm.com>
define domain just edit the persistent xml.
So we should get user and group from persistent xml instead of live xml
when domain is living.
libvirt also support virDomain.metadata and
virDomain.setMetadata two api.
we can use virDomain.setMetadata set set the user and group by both live
xml and
persistent xml.
Signed-off-by: ShaoHe Feng <shaohef(a)linux.vnet.ibm.com>
Signed-off-by: Royce Lv <lvroyce(a)linux.vnet.ibm.com>
---
src/kimchi/model/vms.py | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/kimchi/model/vms.py b/src/kimchi/model/vms.py
index 90e9537..2b9bf56 100644
--- a/src/kimchi/model/vms.py
+++ b/src/kimchi/model/vms.py
@@ -258,9 +258,11 @@ class VMModel(object):
old_xml = new_xml = dom.XMLDesc(0)
+ meta_xml = (dom.XMLDesc(libvirt.VIR_DOMAIN_XML_INACTIVE)
+ if dom.isPersistent() else old_xml)
metadata_xpath = "/domain/metadata/kimchi/access/%s"
- users = xpath_get_text(old_xml, metadata_xpath % "user")
- groups = xpath_get_text(old_xml, metadata_xpath % "group")
+ users = xpath_get_text(meta_xml, metadata_xpath % "user")
+ groups = xpath_get_text(meta_xml, metadata_xpath % "group")
for key, val in params.items():
if key == 'users':
--
Thanks and best regards!
Sheldon Feng(冯少合)<shaohef(a)linux.vnet.ibm.com>
IBM Linux Technology Center