From d08ba12a422803bf5f906ad2e91bf9d5f3b7daa7 Mon Sep 17 00:00:00 2001 From: Daniel Hokka Zakrisson Date: Tue, 19 Jun 2012 21:55:00 +0200 Subject: [PATCH] Merge stdout and stderr as that is what is expected Should also fix problems where something might output an error before the sudo prompt. --- lib/ansible/runner/connection/ssh.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/ansible/runner/connection/ssh.py b/lib/ansible/runner/connection/ssh.py index 0a72dcb956..857498bdc0 100644 --- a/lib/ansible/runner/connection/ssh.py +++ b/lib/ansible/runner/connection/ssh.py @@ -72,13 +72,13 @@ class SSHConnection(object): sudo_output = '' ssh_cmd.append(sudocmd) p = subprocess.Popen(ssh_cmd, stdin=subprocess.PIPE, - stdout=subprocess.PIPE, stderr=subprocess.PIPE) + stdout=subprocess.PIPE, stderr=subprocess.STDOUT) if self.runner.sudo_pass: fcntl.fcntl(p.stdout, fcntl.F_SETFL, fcntl.fcntl(p.stdout, fcntl.F_GETFL) | os.O_NONBLOCK) while not sudo_output.endswith(prompt): - rfd, wfd, efd = select.select([p.stdout, p.stderr], [], - [p.stdout, p.stderr], self.runner.timeout) + rfd, wfd, efd = select.select([p.stdout], [], + [p.stdout], self.runner.timeout) if p.stdout in rfd: chunk = p.stdout.read() if not chunk: @@ -93,7 +93,7 @@ class SSHConnection(object): ssh_cmd.append(cmd) p = subprocess.Popen(ssh_cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE) - return (p.stdin, p.stdout, p.stderr) + return (p.stdin, p.stdout, '') def put_file(self, in_path, out_path): ''' transfer a file from local to remote '''