kvmusertests.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-)
Signed-off-by: Lucio Correia <luciojhc@linux.vnet.ibm.com>
---
kvmusertests.py | 13 ++++++++++---
1 file changed, 10 insertions(+), 3 deletions(-)
diff --git a/kvmusertests.py b/kvmusertests.py
index a3fb273..3b3a603 100644
--- a/kvmusertests.py
+++ b/kvmusertests.py
@@ -1,6 +1,6 @@
# Project Kimchi
#
-# Copyright IBM Corp, 2015-2016
+# Copyright IBM Corp, 2015-2017
#
# This library is free software; you can redistribute it and/or
# modify it under the terms of the GNU Lesser General Public
@@ -17,6 +17,7 @@
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
import libvirt
+import os
import platform
import psutil
import threading
@@ -56,12 +57,18 @@ class UserTests(object):
with RollbackContext() as rollback:
with cls.lock:
- conn = libvirt.open(None)
+ conn = libvirt.open("qemu:///session")
rollback.prependDefer(conn.close)
f = libvirt.VIR_DOMAIN_START_AUTODESTROY
dom = conn.createXML(xml, flags=f)
rollback.prependDefer(dom.destroy)
- filename = '/var/run/libvirt/qemu/%s.pid' % KVMUSERTEST_VM_NAME
+
+ # find pid file for VM
+ uid = str(os.getuid())
+ filedir = os.path.join('/run/user', uid, 'libvirt/qemu/run')
+ if uid == '0':
+ filedir = '/var/run/libvirt/qemu'
+ filename = os.path.join(filedir, KVMUSERTEST_VM_NAME + ".pid")
with open(filename) as f:
pidStr = f.read()
p = psutil.Process(int(pidStr))
--
2.7.4
_______________________________________________
Kimchi-devel mailing list
Kimchi-devel@ovirt.org
http://lists.ovirt.org/mailman/listinfo/kimchi-devel
Hi Lucio, I have tested this patch and I got the following outputs while running with and without sudo permissions: [alinefm@alinefm-TP440 kimchi]$ PYTHONPATH=../../../ python kvmusertests.py alinefm [alinefm@alinefm-TP440 kimchi]$ sudo PYTHONPATH=../../../ python kvmusertests.py qemu As you can see, when running it without sudo the result is different of when running with sudo. This code is used to determine the qemu user in the system to make sure qemu and libvirt can work with some disk files. So 'alinefm' is not the right value to do that. The idea behind this patch is to allow the tests run without sudo, so maybe, it is better to overwrite this code in the tests files instead of changing the production behavior. On 03/03/2017 01:22 PM, Lucio Correia wrote: > Signed-off-by: Lucio Correia <luciojhc@linux.vnet.ibm.com> > --- > kvmusertests.py | 13 ++++++++++--- > 1 file changed, 10 insertions(+), 3 deletions(-) > > diff --git a/kvmusertests.py b/kvmusertests.py > index a3fb273..3b3a603 100644 > --- a/kvmusertests.py > +++ b/kvmusertests.py > @@ -1,6 +1,6 @@ > # Project Kimchi > # > -# Copyright IBM Corp, 2015-2016 > +# Copyright IBM Corp, 2015-2017 > # > # This library is free software; you can redistribute it and/or > # modify it under the terms of the GNU Lesser General Public > @@ -17,6 +17,7 @@ > # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA > > import libvirt > +import os > import platform > import psutil > import threading > @@ -56,12 +57,18 @@ class UserTests(object): > > with RollbackContext() as rollback: > with cls.lock: > - conn = libvirt.open(None) > + conn = libvirt.open("qemu:///session") > rollback.prependDefer(conn.close) > f = libvirt.VIR_DOMAIN_START_AUTODESTROY > dom = conn.createXML(xml, flags=f) > rollback.prependDefer(dom.destroy) > - filename = '/var/run/libvirt/qemu/%s.pid' % KVMUSERTEST_VM_NAME > + > + # find pid file for VM > + uid = str(os.getuid()) > + filedir = os.path.join('/run/user', uid, 'libvirt/qemu/run') > + if uid == '0': > + filedir = '/var/run/libvirt/qemu' > + filename = os.path.join(filedir, KVMUSERTEST_VM_NAME + ".pid") > with open(filename) as f: > pidStr = f.read() > p = psutil.Process(int(pidStr)) _______________________________________________ Kimchi-devel mailing list Kimchi-devel@ovirt.org http://lists.ovirt.org/mailman/listinfo/kimchi-devel
© 2016 - 2024 Red Hat, Inc.