1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

Add paramiko/pycrypto atfork workaround (can back out later if not useful), tweak error

message text per skvidal's suggestion
This commit is contained in:
Michael DeHaan 2012-03-28 20:32:04 -04:00
parent b30ddc4520
commit 706ba9fd9a
2 changed files with 15 additions and 1 deletions

View file

@ -70,7 +70,7 @@ class ParamikoConnection(object):
)
except Exception, e:
if str(e).find("PID check failed") != -1:
raise errors.AnsibleError("paramiko version issue, please upgrade paramiko on the overlord")
raise errors.AnsibleError("paramiko version issue, please upgrade paramiko on the machine running ansible")
else:
raise errors.AnsibleConnectionFailed(str(e))
return self

View file

@ -33,12 +33,26 @@ import ansible.connection
from ansible import utils
from ansible import errors
from ansible import callbacks as ans_callbacks
HAS_ATFORK=True
try:
print "DEBUG: I have atfork"
from Crypto.Random import atfork
except ImportError:
print "DEBUG: I have no atfork, this won't help my problem"
HAS_ATFORK=False
################################################
def _executor_hook(job_queue, result_queue):
''' callback used by multiprocessing pool '''
# attempt workaround of https://github.com/newsapps/beeswithmachineguns/issues/17
# does not occur for everyone, some claim still occurs on newer paramiko
# this function not present in CentOS 6
if HAS_ATFORK:
atfork()
signal.signal(signal.SIGINT, signal.SIG_IGN)
while not job_queue.empty():
try: