Catch DistributionNotFound when pycrypto is absent (#15731)
* Catch DistributionNotFound when pycrypto is absent On Solaris 11, module `pkg_resources` throws `DistributionNotFound` on import if `cryptography` is installed but `pycrypto` is not. This change causes that situation to be handled gracefully. I'm not using Paramiko or Vault, so I my understanding is that I don't need `pycrpto`. I could install `pycrypto` to make the error go away, but: - The latest released version of `pycrypto` doesn't build cleanly on Solaris (https://github.com/dlitz/pycrypto/issues/184). - Solaris includes an old version of GMP that triggers warnings every time Ansible runs (https://github.com/ansible/ansible/issues/6941). I notice that I can silence these warnings with `system_warnings` in `ansible.cfg`, but not installing `pycrypto` seems like a safer solution. * Ignore only `pkg_resources.DistributionNotFound`, not other exceptions.
This commit is contained in:
parent
bad293ae35
commit
95cfceda98
1 changed files with 5 additions and 0 deletions
|
@ -70,6 +70,11 @@ try:
|
|||
HAS_PBKDF2HMAC = True
|
||||
except ImportError:
|
||||
pass
|
||||
except Exception as e:
|
||||
if e.__module__ == 'pkg_resources' and e.__class__.__name__ == 'DistributionNotFound':
|
||||
pass
|
||||
else:
|
||||
raise
|
||||
|
||||
from ansible.compat.six import PY3
|
||||
from ansible.utils.unicode import to_unicode, to_bytes
|
||||
|
|
Loading…
Reference in a new issue