The way SDK uses its own version is causing problem for its installation
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack SDK |
New
|
Undecided
|
Unassigned |
Bug Description
The openstack/version module is current referenced inside the source code at two locations:
- The openstack.utils module
- The openstack.session module
Since the versions are about to be generated by pbr firstly and pbr invokes the openstack/__init__ module when doing installation ... this is creating a problem for installation.
Stack Trace 1:
$ sudo pip install -e .
Obtaining file://
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/local/
from setuptools.
File "/usr/local/
from pkg_resources.
File "/usr/local/
File "/usr/local/
f(*args, **kwargs)
File "/usr/local/
for dist in working_set
File "/usr/local/
for dist in working_set
File "/usr/local/
File "/usr/local/
File "/usr/local/
File "/usr/lib/
mod = imp.load_
File "/opt/stack/
from openstack import connection # NOQA
File "/opt/stack/
from openstack import proxy
File "/opt/stack/
from openstack import resource
File "/opt/stack/
from openstack import utils
File "/opt/stack/
from openstack import version
File "/opt/stack/
__version__ = pbr.version.
File "/usr/local/
return self.semantic_
File "/usr/local/
File "/usr/local/
provider = pkg_resources.
File "/usr/local/
return working_
TypeError: 'NoneType' object is not callable
Stack trace 2:
$ sudo pip install -e .
Obtaining file://
Complete output from command python setup.py egg_info:
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/usr/local/
from setuptools.
File "/usr/local/
from pkg_resources.
File "/usr/local/
File "/usr/local/
f(*args, **kwargs)
File "/usr/local/
for dist in working_set
File "/usr/local/
for dist in working_set
File "/usr/local/
File "/usr/local/
File "/usr/local/
File "/usr/lib/
mod = imp.load_
File "/opt/stack/
from openstack import connection # NOQA
File "/opt/stack/
from openstack import proxy
File "/opt/stack/
from openstack import resource
File "/opt/stack/
from openstack import utils
File "/opt/stack/
from openstack import version
File "/opt/stack/
__version__ = pbr.version.
File "/usr/local/
return self.semantic_
File "/usr/local/
File "/usr/local/
provider = pkg_resources.
File "/usr/local/
return working_
TypeError: 'NoneType' object is not callable
We've had a bunch of problems with this but I'm not really sure what to do. PBR has always caused more problems than it's solved so I'd rather we just not use it at all, if that's possible.
Also, I don't remember why we had to do this, but we switched away from having the version inside openstack.__init__ to having openstack. version. __version_ _. Would moving it back help anything?