Re: [OpenStack-Infra] Shade on Python 2.7 in Ubuntu fails due to UCS2 problem

2018-02-13 Thread Clark Boylan


On Tue, Feb 13, 2018, at 8:58 AM, Amir Hadi wrote:
> Hi,
> 
> we use the OpenStack Ansible Plugin, which depends on shade. The 
> installed shade version is `shade==1.26.0`. Our ansible setup is in a 
> docker images, which comes from `ubuntu:16.04`.
> 
> Our deployment fails, because the openstack plugin reports the following:
> /home/builder/epoch/deployment/ansible/inventory/openstack.yml with openstack
> plugin: shade is required for the OpenStack inventory plugin. OpenStack
> inventory sources will be skipped.
> 
> Then I fired up the python shell to `import shade` which results in the 
> following error:
> >>> import shade
> Traceback (most recent call last):
>   File "", line 1, in 
>   File "/home/builder/ansible_deploy/local/lib/python2.7/site-packages/
> shade/__init__.py", line 24, in 
> from shade.openstackcloud import OpenStackCloud
>   File "/home/builder/ansible_deploy/local/lib/python2.7/site-packages/
> shade/openstackcloud.py", line 46, in 
> from shade import _legacy_clients
>   File "/home/builder/ansible_deploy/local/lib/python2.7/site-packages/
> shade/_legacy_clients.py", line 18, in 
> from shade import _utils
>   File "/home/builder/ansible_deploy/local/lib/python2.7/site-packages/
> shade/_utils.py", line 20, in 
> import netifaces
> ImportError: /home/builder/ansible_deploy/local/lib/python2.7/site-
> packages/netifaces.so: undefined symbol: PyUnicodeUCS2_FromString
> 
> It looks like this is a problem with different ABIs (see 
> https://stackoverflow.com/questions/31644056/is-python-2-7-wide-build-usc4-not-compatible-with-certain-libraries).
>  
> Our Python seems to be compiled to use UCS4:
> >>> import sys
> >>> print sys.maxunicode
> 1114111
> 
> Any ideas how to resolve this?
> 
> Best regards,
> Amir Hadi
> 
> PS: It’s been a while that I have used mailing lists, I hope the 
> formatting of this message is ok.

The problem is in the upstream netifaces package and is being tracked at 
https://github.com/al45tair/netifaces/issues/2. Until that is fixed you can 
install netifaces without using wheels to avoid this problem.

Something like `pip install --force-reinstall --upgrade --no-binary netifaces`

Hope this helps,
Clark

___
OpenStack-Infra mailing list
OpenStack-Infra@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra

[OpenStack-Infra] Shade on Python 2.7 in Ubuntu fails due to UCS2 problem

2018-02-13 Thread Amir Hadi
Hi,

we use the OpenStack Ansible Plugin, which depends on shade. The installed 
shade version is `shade==1.26.0`. Our ansible setup is in a docker images, 
which comes from `ubuntu:16.04`.

Our deployment fails, because the openstack plugin reports the following:
/home/builder/epoch/deployment/ansible/inventory/openstack.yml with openstack
plugin: shade is required for the OpenStack inventory plugin. OpenStack
inventory sources will be skipped.

Then I fired up the python shell to `import shade` which results in the 
following error:
>>> import shade
Traceback (most recent call last):
  File "", line 1, in 
  File 
"/home/builder/ansible_deploy/local/lib/python2.7/site-packages/shade/__init__.py",
 line 24, in 
from shade.openstackcloud import OpenStackCloud
  File 
"/home/builder/ansible_deploy/local/lib/python2.7/site-packages/shade/openstackcloud.py",
 line 46, in 
from shade import _legacy_clients
  File 
"/home/builder/ansible_deploy/local/lib/python2.7/site-packages/shade/_legacy_clients.py",
 line 18, in 
from shade import _utils
  File 
"/home/builder/ansible_deploy/local/lib/python2.7/site-packages/shade/_utils.py",
 line 20, in 
import netifaces
ImportError: 
/home/builder/ansible_deploy/local/lib/python2.7/site-packages/netifaces.so: 
undefined symbol: PyUnicodeUCS2_FromString

It looks like this is a problem with different ABIs (see 
https://stackoverflow.com/questions/31644056/is-python-2-7-wide-build-usc4-not-compatible-with-certain-libraries).
 Our Python seems to be compiled to use UCS4:
>>> import sys
>>> print sys.maxunicode
1114111

Any ideas how to resolve this?

Best regards,
Amir Hadi

PS: It’s been a while that I have used mailing lists, I hope the formatting of 
this message is ok.___
OpenStack-Infra mailing list
OpenStack-Infra@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra