From 05bcd4b67450b2bee51a6e7b36c0d93632497036 Mon Sep 17 00:00:00 2001 From: AlanCoding Date: Wed, 28 Jun 2017 10:54:08 -0400 Subject: [PATCH] fix bug where isolated management jobs could not load JSON output --- awx/main/isolated/isolated_manager.py | 2 +- awx/main/isolated/run.py | 7 +++++-- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/awx/main/isolated/isolated_manager.py b/awx/main/isolated/isolated_manager.py index 4f8e602aad..d8764ac086 100644 --- a/awx/main/isolated/isolated_manager.py +++ b/awx/main/isolated/isolated_manager.py @@ -166,7 +166,7 @@ class IsolatedManager(object): isolated_key = os.path.join(isolated_ssh_path, '.isolated') ssh_sock = os.path.join(isolated_ssh_path, '.isolated_ssh_auth.sock') run.open_fifo_write(isolated_key, settings.AWX_ISOLATED_PRIVATE_KEY) - pexpect_args = run.wrap_args_with_ssh_agent(pexpect_args, isolated_key, ssh_sock) + pexpect_args = run.wrap_args_with_ssh_agent(pexpect_args, isolated_key, ssh_sock, silence_ssh_add=True) return run.run_pexpect(pexpect_args, *args, **kw) finally: if isolated_ssh_path: diff --git a/awx/main/isolated/run.py b/awx/main/isolated/run.py index 22e7554f78..39387f9ee6 100755 --- a/awx/main/isolated/run.py +++ b/awx/main/isolated/run.py @@ -27,9 +27,12 @@ def args2cmdline(*args): return ' '.join([pipes.quote(a) for a in args]) -def wrap_args_with_ssh_agent(args, ssh_key_path, ssh_auth_sock=None): +def wrap_args_with_ssh_agent(args, ssh_key_path, ssh_auth_sock=None, silence_ssh_add=False): if ssh_key_path: - cmd = ' && '.join([args2cmdline('ssh-add', ssh_key_path), + ssh_add_command = args2cmdline('ssh-add', ssh_key_path) + if silence_ssh_add: + ssh_add_command = ' '.join([ssh_add_command, '2>/dev/null']) + cmd = ' && '.join([ssh_add_command, args2cmdline('rm', '-f', ssh_key_path), args2cmdline(*args)]) args = ['ssh-agent']