Blame SOURCES/sos-collector-pexpect.patch

df0aae
From 76ca28dc5ce222d24086b387a448ceeb53055e4b Mon Sep 17 00:00:00 2001
df0aae
From: Jake Hunsaker <jhunsake@redhat.com>
df0aae
Date: Wed, 15 May 2019 16:21:01 -0400
df0aae
Subject: [PATCH] [sosnode] Properly quote commands that need a pty
df0aae
df0aae
When we run locally and need a pty, we need to quote the command and
df0aae
launch it in a bash shell to function correctly with pexpect.spawn().
df0aae
df0aae
Signed-off-by: Jake Hunsaker <jhunsake@redhat.com>
df0aae
---
df0aae
 soscollector/sosnode.py | 3 +++
df0aae
 1 file changed, 3 insertions(+)
df0aae
df0aae
diff --git a/soscollector/sosnode.py b/soscollector/sosnode.py
df0aae
index 6c01471..fc42b94 100644
df0aae
--- a/soscollector/sosnode.py
df0aae
+++ b/soscollector/sosnode.py
df0aae
@@ -366,6 +366,9 @@ class SosNode():
df0aae
             get_pty = True
df0aae
         if not self.local and not force_local:
df0aae
             cmd = "%s %s" % (self.ssh_cmd, quote(cmd))
df0aae
+        else:
df0aae
+            if get_pty:
df0aae
+                cmd = "/bin/bash -c %s" % quote(cmd)
df0aae
         res = pexpect.spawn(cmd, encoding='utf-8')
df0aae
         if need_root:
df0aae
             if self.config['need_sudo']:
df0aae
-- 
df0aae
2.17.2
df0aae