On 04/22/2014 01:42 PM, Aline Manera wrote:
On 04/22/2014 01:39 PM, Aline Manera wrote:
> On 04/21/2014 03:58 AM, Royce Lv wrote:
>> On 2014年04月21日 14:22, 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.
>> Sheldon found this bug: when we set kimchi metadata when vm is
>> running, we cannot read corresponding info,
>> the root cause is what we set is in persistent configuration, but
>> what we read from is the live xml.
>> His patch fix this inconsistency by just manipulating(read/write)
>> the persistent one.
>
> Royce, I made some tests and even with this patch when I updated
> users/groups in a running VM the changes
> only take effect in next boot
>
I found the problem. To fix it we also need to do:
+ xml = dom.XMLDesc(libvirt.VIR_DOMAIN_XML_INACTIVE)
in lookup()
I will adjust that before applying
Sheldon, as you will need to update this patch according to my comments,
could you also update lookup()?
>>>
>>> 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':
>>
>> _______________________________________________
>> Kimchi-devel mailing list
>> Kimchi-devel(a)ovirt.org
>>
http://lists.ovirt.org/mailman/listinfo/kimchi-devel
>
> _______________________________________________
> Kimchi-devel mailing list
> Kimchi-devel(a)ovirt.org
>
http://lists.ovirt.org/mailman/listinfo/kimchi-devel
_______________________________________________
Kimchi-devel mailing list
Kimchi-devel(a)ovirt.org
http://lists.ovirt.org/mailman/listinfo/kimchi-devel