diff options
Diffstat (limited to 'meta')
-rw-r--r-- | meta/lib/oeqa/core/target/ssh.py | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/meta/lib/oeqa/core/target/ssh.py b/meta/lib/oeqa/core/target/ssh.py index 09cdd14c75..d473469384 100644 --- a/meta/lib/oeqa/core/target/ssh.py +++ b/meta/lib/oeqa/core/target/ssh.py | |||
@@ -55,14 +55,14 @@ class OESSHTarget(OETarget): | |||
55 | def stop(self, **kwargs): | 55 | def stop(self, **kwargs): |
56 | pass | 56 | pass |
57 | 57 | ||
58 | def _run(self, command, timeout=None, ignore_status=True): | 58 | def _run(self, command, timeout=None, ignore_status=True, raw=False): |
59 | """ | 59 | """ |
60 | Runs command in target using SSHProcess. | 60 | Runs command in target using SSHProcess. |
61 | """ | 61 | """ |
62 | self.logger.debug("[Running]$ %s" % " ".join(command)) | 62 | self.logger.debug("[Running]$ %s" % " ".join(command)) |
63 | 63 | ||
64 | starttime = time.time() | 64 | starttime = time.time() |
65 | status, output = SSHCall(command, self.logger, timeout) | 65 | status, output = SSHCall(command, self.logger, timeout, raw) |
66 | self.logger.debug("[Command returned '%d' after %.2f seconds]" | 66 | self.logger.debug("[Command returned '%d' after %.2f seconds]" |
67 | "" % (status, time.time() - starttime)) | 67 | "" % (status, time.time() - starttime)) |
68 | 68 | ||
@@ -72,7 +72,7 @@ class OESSHTarget(OETarget): | |||
72 | 72 | ||
73 | return (status, output) | 73 | return (status, output) |
74 | 74 | ||
75 | def run(self, command, timeout=None, ignore_status=True): | 75 | def run(self, command, timeout=None, ignore_status=True, raw=False): |
76 | """ | 76 | """ |
77 | Runs command in target. | 77 | Runs command in target. |
78 | 78 | ||
@@ -91,7 +91,7 @@ class OESSHTarget(OETarget): | |||
91 | else: | 91 | else: |
92 | processTimeout = self.timeout | 92 | processTimeout = self.timeout |
93 | 93 | ||
94 | status, output = self._run(sshCmd, processTimeout, ignore_status) | 94 | status, output = self._run(sshCmd, processTimeout, ignore_status, raw) |
95 | self.logger.debug('Command: %s\nStatus: %d Output: %s\n' % (command, status, output)) | 95 | self.logger.debug('Command: %s\nStatus: %d Output: %s\n' % (command, status, output)) |
96 | 96 | ||
97 | return (status, output) | 97 | return (status, output) |
@@ -206,7 +206,7 @@ class OESSHTarget(OETarget): | |||
206 | remoteDir = os.path.join(remotePath, tmpDir.lstrip("/")) | 206 | remoteDir = os.path.join(remotePath, tmpDir.lstrip("/")) |
207 | self.deleteDir(remoteDir) | 207 | self.deleteDir(remoteDir) |
208 | 208 | ||
209 | def SSHCall(command, logger, timeout=None, **opts): | 209 | def SSHCall(command, logger, timeout=None, raw=False, **opts): |
210 | 210 | ||
211 | def run(): | 211 | def run(): |
212 | nonlocal output | 212 | nonlocal output |
@@ -265,7 +265,7 @@ def SSHCall(command, logger, timeout=None, **opts): | |||
265 | else: | 265 | else: |
266 | output_raw = process.communicate()[0] | 266 | output_raw = process.communicate()[0] |
267 | 267 | ||
268 | output = output_raw.decode('utf-8', errors='ignore') | 268 | output = output_raw if raw else output_raw.decode('utf-8', errors='ignore') |
269 | logger.debug('Data from SSH call:\n%s' % output.rstrip()) | 269 | logger.debug('Data from SSH call:\n%s' % output.rstrip()) |
270 | 270 | ||
271 | # timout or not, make sure process exits and is not hanging | 271 | # timout or not, make sure process exits and is not hanging |
@@ -292,7 +292,7 @@ def SSHCall(command, logger, timeout=None, **opts): | |||
292 | 292 | ||
293 | options = { | 293 | options = { |
294 | "stdout": subprocess.PIPE, | 294 | "stdout": subprocess.PIPE, |
295 | "stderr": subprocess.STDOUT, | 295 | "stderr": subprocess.STDOUT if not raw else None, |
296 | "stdin": None, | 296 | "stdin": None, |
297 | "shell": False, | 297 | "shell": False, |
298 | "bufsize": -1, | 298 | "bufsize": -1, |
@@ -320,4 +320,4 @@ def SSHCall(command, logger, timeout=None, **opts): | |||
320 | logger.debug('Something went wrong, killing SSH process') | 320 | logger.debug('Something went wrong, killing SSH process') |
321 | raise | 321 | raise |
322 | 322 | ||
323 | return (process.returncode, output.rstrip()) | 323 | return (process.returncode, output if raw else output.rstrip()) |