Bug 1556933

Summary: Bump python-cryptography to >=2.1
Product: Red Hat OpenStack Reporter: Carlos Goncalves <cgoncalves>
Component: python-cryptographyAssignee: Jon Schlueter <jschluet>
Status: CLOSED ERRATA QA Contact: Alexander Stafeyev <astafeye>
Severity: urgent Docs Contact:
Priority: high    
Version: 13.0 (Queens)CC: amoralej, amuller, apevec, astafeye, knylande, lars, lhh, markmc, mburns, srevivo
Target Milestone: betaKeywords: Rebase, Triaged
Target Release: 13.0 (Queens)   
Hardware: Unspecified   
OS: Unspecified   
Fixed In Version: python-cryptography-2.1.4-1.el7ost Doc Type: Release Note
Doc Text:
Since version 2.1, python-cryptography checks that the CNS Names used in certificates are compliant with IDN standards. If the found names do not follow this specification, cryptography will fail to validate the certificate and different errors may be found when using OpenStack command line interface or in OpenStack service logs.
Story Points: ---
Clone Of: 1553517 Environment:
Last Closed: 2018-06-27 13:46:53 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Bug Depends On: 1553517, 1553521    
Bug Blocks: 1553520    

Description Carlos Goncalves 2018-03-15 14:55:47 UTC
+++ This bug was initially created as a clone of Bug #1553517 +++

Description of problem:

Octavia requires python2-cryptography!=2.0,>=1.9 [1] and is synced with global-requirement.txt [2]. CentOS7 provides python2-cryptography-1.7.2-1.el7 which is not good enough and throws exceptions on load balancer create in Octavia:

2018-03-08 23:45:46.453 24634 ERROR octavia.controller.worker.controller_worker   File "/usr/lib/python2.7/site-packages/octavia/certificates/common/pkcs12.py", line 35, in get_certificate
2018-03-08 23:45:46.453 24634 ERROR octavia.controller.worker.controller_worker     return self.certificate.to_cryptography().public_bytes(
2018-03-08 23:45:46.453 24634 ERROR octavia.controller.worker.controller_worker AttributeError: 'X509' object has no attribute 'to_cryptography'

Could we promote python2-cryptography-2.1.4 from Fedora [3]? There might be some considerations to be made first, i.e. bump of openssl and pyopenssl versions?

[1] https://github.com/openstack/octavia/blob/master/requirements.txt#L47
[2] https://github.com/openstack/requirements/blob/master/global-requirements.txt#L28
[3] https://src.fedoraproject.org/rpms/python-cryptography/blob/master/f/python-cryptography.spec

--- Additional comment from Carlos Goncalves on 2018-03-15 07:02:17 EDT ---

python-cryptography>=1.9 is not good enough as recently discovered with a new gate using lower-constraints [1]. Octavia requires python-cryptography>=2.1.

Version bump being requested upstream for global-requirements.txt and lower-constraints.txt in [2].

[1] https://review.openstack.org/#/c/553134/
[2] https://review.openstack.org/#/c/553136/

Comment 2 Assaf Muller 2018-03-29 07:58:29 UTC
RDO already bumped the library, waiting for an import.

Comment 10 errata-xmlrpc 2018-06-27 13:46:53 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.