Bug 1300640 - spec: require python-six >= 1.9
spec: require python-six >= 1.9
Product: vdsm
Classification: oVirt
Component: Core (Show other bugs)
Unspecified Unspecified
high Severity high (vote)
: ovirt-4.0.0-alpha
: 4.18.0
Assigned To: Vinzenz Feenstra [evilissimo]
Lukas Svaty
Depends On:
  Show dependency treegraph
Reported: 2016-01-21 05:39 EST by Martin Perina
Modified: 2016-07-05 03:52 EDT (History)
8 users (show)

See Also:
Fixed In Version: ovirt 4.0.0 alpha1
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2016-07-05 03:52:54 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: Infra
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
rule-engine: ovirt‑4.0.0+
rule-engine: planning_ack+
danken: devel_ack+
rule-engine: testing_ack+

Attachments (Terms of Use)
engine & vdsm logs (400.82 KB, application/x-gzip)
2016-01-21 05:40 EST, Martin Perina
no flags Details

External Trackers
Tracker ID Priority Status Summary Last Updated
oVirt gerrit 53114 master MERGED Require python-six >= 1.9.0 2016-02-05 07:28 EST

  None (edit)
Description Martin Perina 2016-01-21 05:39:08 EST
Description of problem:

When trying to add Centos 7 host to engine, ovirtmgmt bridge is not created and following exception appears in vdsm.log:

Traceback (most recent call last):
  File "/usr/share/vdsm/vdsm", line 151, in run
  File "/usr/share/vdsm/vdsm", line 101, in serve_clients
    from clientIF import clientIF  # must import after config is read
  File "/usr/share/vdsm/clientIF.py", line 31, in <module>
    from yajsonrpc.betterAsyncore import Reactor
  File "/usr/lib/python2.7/site-packages/yajsonrpc/betterAsyncore.py", line 25, in <module>
    from vdsm.sslcompat import sslutils
  File "/usr/lib/python2.7/site-packages/vdsm/sslcompat.py", line 23, in <module>
    from . import m2cutils as sslutils
  File "/usr/lib/python2.7/site-packages/vdsm/m2cutils.py", line 24, in <module>
    from six.moves import xmlrpc_client as xmlrpclib
ImportError: cannot import name xmlrpc_client

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. Try to add new host into engine

Actual results:

Error adding new host in engine

Expected results:

Host added successfully

Additional info:
Comment 1 Martin Perina 2016-01-21 05:40 EST
Created attachment 1116892 [details]
engine & vdsm logs
Comment 2 Piotr Kliczewski 2016-01-22 08:13:44 EST
I attempted to reproduce it. I used a vm with installed "CentOS Linux release 7.2.1511 (Core)". I used: "yum install http://resources.ovirt.org/pub/yum-repo/ovirt-release-master.rpm" to get latest master vdsm. After running host deploy the host was 'Up'.

Please recheck whether it works for you with the latest vdsm.
Comment 3 Dan Kenigsberg 2016-01-23 10:27:59 EST
Martin, which "six" version do you have installed? With


$ python -c 'from six.moves import xmlrpc_client as xmlrpclib'

is quitely successful.
Comment 4 Martin Perina 2016-01-25 04:07:55 EST

the issue still remains even with latest master builds:


Here is version of python-six:


But when trying import, error appears:

python -c 'from six.moves import xmlrpc_client as xmlrpclib'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
ImportError: cannot import name xmlrpc_client

Centos version is:
  CentOS Linux release 7.1.1503 (Core)
Comment 5 Piotr Kliczewski 2016-01-25 04:32:25 EST
I can see that you have a bit older version of python-six.

I am using plain centos and on my vm there is installed from base repo.
I checked my f22 and there I have

It seems that we could explicitly require version of python-six in the spec.

Can you please update your OS and tell me whether the issue is still there?
Comment 6 Red Hat Bugzilla Rules Engine 2016-01-25 04:47:50 EST
Bug tickets must have version flags set prior to targeting them to a release. Please ask maintainer to set the correct version flags and only then set the target milestone.
Comment 7 Martin Perina 2016-01-25 06:24:07 EST
So after upgrading hosts to Centos 7.2 which contains python-six-1.9.0-2.el7.noarch the issue is fixed.

Is it worth to add version dependency for python-six >= 1.9.0 to vdsm or do we expect customers to run always latest version of Centos?
Comment 8 Dan Kenigsberg 2016-01-25 06:31:09 EST
el>=7.2 is a requirement for ovirt>=3.6, but we tend to add a requirement when you see that missing it causes pain to users.
Comment 9 Lukas Svaty 2016-07-01 07:19:35 EDT
sanity only, verified in vdsm-4.18.999
Comment 10 Sandro Bonazzola 2016-07-05 03:52:54 EDT
oVirt 4.0.0 has been released, closing current release.

Note You need to log in before you can comment on or make changes to this bug.