Test cases fails when metadata added:
royce@royce-ThinkPad-T420:~/lvroyce/kimchi/kimchi/tests$ sudo
./run_tests.sh test_model.ModelTests.test_use_test_host
Loading AptUpdate features.
libvirt: error : this function is not supported by the connection
driver: virDomainSetMetadata
libvirt: error : this function is not supported by the connection
driver: virDomainGetMetadata
no_domain_meta error 80
royce 3
E
======================================================================
ERROR: test_use_test_host (test_model.ModelTests)
----------------------------------------------------------------------
Traceback (most recent call last):
File "test_model.py", line 1008, in test_use_test_host
self.assertTrue('kimchi-vm' in vms)
File
"/home/royce/lvroyce/kimchi/kimchi/src/kimchi/rollbackcontext.py", line
53, in __exit__
undo(*args, **kwargs)
File "/home/royce/lvroyce/kimchi/kimchi/src/kimchi/model/vms.py",
line 425, in delete
info = self.lookup(name)
File "/home/royce/lvroyce/kimchi/kimchi/src/kimchi/model/vms.py",
line 382, in lookup
access_xml = (get_vm_metadata_element(dom, "access") or
File "/home/royce/lvroyce/kimchi/kimchi/src/kimchi/model/utils.py",
line 104, in get_vm_metadata_element
raise e
libvirtError: this function is not supported by the connection driver:
virDomainGetMetadata
----------------------------------------------------------------------
Ran 1 test in 2.092s
FAILED (errors=1)
This is because test:///default does not support virDomainGetMetadata at
my version.
We need to change this to be qemu:///system or we ignore this error when
lookup vm information.
On 2014年04月24日 13:16, shaohef(a)linux.vnet.ibm.com wrote:
From: ShaoHe Feng <shaohef(a)linux.vnet.ibm.com>
When vm is live, we should also get user and group correctly.
Signed-off-by: ShaoHe Feng <shaohef(a)linux.vnet.ibm.com>
Signed-off-by: Royce Lv <lvroyce(a)linux.vnet.ibm.com>
---
tests/test_model.py | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/tests/test_model.py b/tests/test_model.py
index b17ce00..ab22012 100644
--- a/tests/test_model.py
+++ b/tests/test_model.py
@@ -603,6 +603,19 @@ class ModelTests(unittest.TestCase):
self.assertRaises(InvalidParameter, inst.vm_update,
'kimchi-vm1', params)
+ # change VM users and groups, when wm is running.
+ inst.vm_update(u'kimchi-vm1',
+ {'users': ['root'], 'groups':
['root']})
+ vm_info = inst.vm_lookup(u'kimchi-vm1')
+ self.assertEquals(['root'], vm_info['users'])
+ self.assertEquals(['root'], vm_info['groups'])
+ # change VM users and groups by removing all elements,
+ # when wm is running.
+ inst.vm_update(u'kimchi-vm1', {'users': [],
'groups': []})
+ vm_info = inst.vm_lookup(u'kimchi-vm1')
+ self.assertEquals([], vm_info['users'])
+ self.assertEquals([], vm_info['groups'])
+
inst.vm_poweroff('kimchi-vm1')
self.assertRaises(OperationFailed, inst.vm_update,
'kimchi-vm1', {'name':
'kimchi-vm2'})