[Kimchi-devel] [PATCH] bug fix: from persistent xml get user and group

Sheldon shaohef at linux.vnet.ibm.com
Wed Apr 23 06:41:24 UTC 2014


On 04/23/2014 12:50 AM, Aline Manera wrote:
> On 04/21/2014 03:22 AM, shaohef at linux.vnet.ibm.com wrote:
>> From: ShaoHe Feng<shaohef at 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.
>>
>> Signed-off-by: ShaoHe Feng<shaohef at linux.vnet.ibm.com>
>> Signed-off-by: Royce Lv<lvroyce at 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)
>
> From libvirt doc 
> (http://libvirt.org/html/libvirt-libvirt.html#virDomainGetXMLDesc):
>
> "If @flags includes VIR_DOMAIN_XML_INACTIVE 
> <http://libvirt.org/html/libvirt-libvirt.html#VIR_DOMAIN_XML_INACTIVE>, then 
> the XML represents the configuration that will be
> used on the next boot of a persistent domain; otherwise, the 
> configuration represents the currently running domain"
>
> So you don't need to add the 'if' statement there (if dom.isPersistent())
>
> And call direclty:
>
> meta_xml = (dom.XMLDesc(libvirt.VIR_DOMAIN_XML_INACTIVE)
Actually libvirt support to create a dom without define it.

some other tools may keep the vm configure by itself,  and just let 
libvirt create it.

So no configure xml and dom.XMLDesc(libvirt.VIR_DOMAIN_XML_INACTIVE)  
will raise an error.

>
>>           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 at linux.vnet.ibm.com>
IBM Linux Technology Center

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ovirt.org/pipermail/kimchi-devel/attachments/20140423/847cebda/attachment.html>


More information about the Kimchi-devel mailing list