-
Story
-
Resolution: Done
-
Normal
-
None
-
None
-
None
-
OpenDaylight (ODL)
Jenkins jobs using lftools to create VMs are failing because of pyparsing dependency.
There is an error message warning dependency incompatibility:
—
17:30:29 ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
17:30:29 httplib2 0.20.1 requires pyparsing<3,>=2.4.2, but you have pyparsing 3.0.1 which is incompatible.
—
And lftools command fails because of missing attribute:
—
17:30:33 + lftools openstack --os-cloud vex stack create sandbox-openflowplugin-csit-3node-clustering-only-silicon-1 csit-2-instance-type.yaml /w/workspace/openflowplugin-csit-3node-clustering-only-silicon/stack-parameters.yaml
17:30:33 Traceback (most recent call last):
17:30:33 File "/home/jenkins/.local/bin/lftools", line 5, in <module>
17:30:33 from lftools.cli import main
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/lftools/cli/_init_.py", line 28, in <module>
17:30:33 from lftools.cli.lfidapi import lfidapi
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/lftools/cli/lfidapi.py", line 16, in <module>
17:30:33 from lftools.lfidapi import (
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/lftools/lfidapi.py", line 22, in <module>
17:30:33 from lftools.oauth2_helper import oauth_helper
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/lftools/oauth2_helper.py", line 14, in <module>
17:30:33 import httplib2
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/httplib2/_init_.py", line 52, in <module>
17:30:33 from . import auth
17:30:33 File "/home/jenkins/.local/lib/python3.6/site-packages/httplib2/auth.py", line 20, in <module>
17:30:33 auth_param_name = token.copy().setName("auth-param-name").addParseAction(pp.downcaseTokens)
17:30:33 AttributeError: module 'pyparsing' has no attribute 'downcaseTokens'
17:30:33 Build step 'Execute shell' marked build as failure
—
Adding following line to 'jjb/global-jjb/shell/python-tools-install.sh' under 'PINNED INDIRECT DEPENDENCIES' resolved issue for the Jenkins jobs in the sandbox:
—
pyparsing<3.0.0 # httplib2 0.20.1 requires pyparsing<3,>=2.4.2
—
But not sure this is the correct fix.