Add hotfix for koji ssl issues.
This commit is contained in:
parent
7b9b3db1eb
commit
9891e0e4e2
2 changed files with 29 additions and 2 deletions
|
@ -1943,8 +1943,29 @@ class ClientSession(object):
|
||||||
except Exception, e:
|
except Exception, e:
|
||||||
self._close_connection()
|
self._close_connection()
|
||||||
if isinstance(e, OpenSSL.SSL.Error):
|
if isinstance(e, OpenSSL.SSL.Error):
|
||||||
for arg in e.args:
|
# pyOpenSSL doesn't use different exception
|
||||||
for _, _, ssl_reason in arg:
|
# subclasses, we have to actually parse the args
|
||||||
|
for arg in e.args:
|
||||||
|
# First, check to see if 'arg' is iterable because
|
||||||
|
# it can be anything..
|
||||||
|
try:
|
||||||
|
iter(arg)
|
||||||
|
except TypeError:
|
||||||
|
continue
|
||||||
|
|
||||||
|
# We do all this so that we can detect cert expiry
|
||||||
|
# so we can avoid retrying those over and over.
|
||||||
|
for items in arg:
|
||||||
|
try:
|
||||||
|
iter(items)
|
||||||
|
except TypeError:
|
||||||
|
continue
|
||||||
|
|
||||||
|
if len(items) != 3:
|
||||||
|
continue
|
||||||
|
|
||||||
|
_, _, ssl_reason = items
|
||||||
|
|
||||||
if ('certificate revoked' in ssl_reason or
|
if ('certificate revoked' in ssl_reason or
|
||||||
'certificate expired' in ssl_reason):
|
'certificate expired' in ssl_reason):
|
||||||
# There's no point in retrying for this
|
# There's no point in retrying for this
|
||||||
|
|
|
@ -255,3 +255,9 @@
|
||||||
tags:
|
tags:
|
||||||
- koji_builder
|
- koji_builder
|
||||||
|
|
||||||
|
- name: HOTFIX ssl fix for koji
|
||||||
|
copy: src=__init__.py dest=/usr/lib/python2.7/site-packages/koji/__init__.py
|
||||||
|
tags:
|
||||||
|
- koji_builder
|
||||||
|
- hotfix
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue