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

message text per skvidal's suggestion
pull/90/head
Michael DeHaan 12 years ago
parent b30ddc4520
commit 706ba9fd9a

@ -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

@ -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:

Loading…
Cancel
Save