[rdo-list] Rebuild a newer version of python-crypto ?

Haïkel hguemar at fedoraproject.org
Mon Aug 22 21:18:59 UTC 2016


On 22/08/16 22:44, David Moreau Simard wrote:
> Hi,
>
> I'm noticing an issue in the review.rdo gate.
> We pip install zuul in the nodepool images (presumably for
> zuul-cloner) which pulls in Paramiko which pulls pycrypto:
> Collecting pycrypto!=2.4,<3.0,>=2.1 (from paramiko<2.0.0,>=1.8.0->zuul)
>
> It looks like if we install crypto from both pip and packages, we're
> bound to be running into issues like that:
> ====
> Error: /Stage[main]/Glance/Package[openstack-glance]/ensure: change
> from absent to present failed: Execution of '/bin/yum -d 0 -e 0 -y
> install openstack-glance' returned 1: Error downloading packages:
>   1:openstack-glance-13.0.0-0.20160817133141.bfe4d91.el7.centos.noarch:
> [Errno 256] No more mirrors to try.
> Error: Execution of '/bin/yum -d 0 -e 0 -y install
> openstack-barbican-api' returned 1: Error unpacking rpm package
> python-crypto-2.6.1-1.el7.x86_64


====>>>>

> error: unpacking of archive failed on file
> /usr/lib64/python2.7/site-packages/pycrypto-2.6.1-py2.7.egg-info:
> cpio: rename failed - Is a directory
> ====
>

<<<<==== This is a known RPM/CPIO issue, and in this case, not a packaging bug.



> Reproduced here [1] on a fresh CentOS install with:
>     1  yum -y install "@Development Tools" python-devel openssl-devel
> libffi-devel libxml2-devel python-setuptools python-crypto
>     2  yum -y remove python-crypto
>     3  easy_install pip
>     4  pip install pycrypto
>     5  yum -y install python-crypto
>

*fresh* as in no Cloud SIG repository?
In that case, this is totally expected behaviour because of setuptools
versions difference.
Not mentionning, that mixing packages and pip-installed modules in
system site-packages is not supported.

Please check setuptools versions, note that we ship a more recent
setuptools in Cloud SIG repositories.

> I am unable to reproduce the issue on Fedora.
> CentOS extras (and RDO) has python-crypto-2.6.1-1.el7.centos.x86_64
> (2014) while Fedora has python-crypto-2.6.1-10.fc24 (2016).
>


$ rpm -qi python2-crypto
Name        : python2-crypto
Version     : 2.6.1
Release     : 10.fc24
Architecture: x86_64
Install Date: Wed 09 Mar 2016 13:16:13 CET
$ sudo pip install pycrypto
Requirement already satisfied (use --upgrade to upgrade): pycrypto in
/usr/lib64/python2.7/site-packages

pip is able to detect that pycrypto is already installed from package.


> Can we update the version we have in RDO ? Or is there some other root
> cause I'm missing ?
>

For the record, I also diffed 2.6.1-1 and 2.6.1-10 and the main changes are:
* python3 port (irrelevant for us)
* unbundling libtomcrypt which may be a good reason for rebuilding it
in RDO but irrelevant to your issue.

But again, it won't solve that particular issue. Better fix would be
using virtualenv for zuul-cloner.

Regards,
H.

> [1]: http://pastebin.centos.org/52006/raw/
>
> David Moreau Simard
> Senior Software Engineer | Openstack RDO
>
> dmsimard = [irc, github, twitter]
>




More information about the dev mailing list