oeqa/target/ssh: add ignore_status argument to run()

The underlying _run() method has an ignore_status argument and can
either return the exit code or raise an exception if it is non-zero.

Add the same argument to the run() method so that test cases can change
this value. It currently defaults to True as that is the existing
behaviour, but a follow-up patch will change this to False as test cases
should fail on errors unless told otherwise.

(From OE-Core rev: e244228730178d15a066a1428956de328cc09671)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2022-11-01 16:29:04 +00:00
committed by Richard Purdie
parent 0a97cbba10
commit 4a264f3695

View File

@@ -78,7 +78,7 @@ class OESSHTarget(OETarget):
return (status, output)
def run(self, command, timeout=None):
def run(self, command, timeout=None, ignore_status=True):
"""
Runs command in target.
@@ -97,7 +97,7 @@ class OESSHTarget(OETarget):
else:
processTimeout = self.timeout
status, output = self._run(sshCmd, processTimeout, True)
status, output = self._run(sshCmd, processTimeout, ignore_status)
self.logger.debug('Command: %s\nStatus: %d Output: %s\n' % (command, status, output))
if (status == 255) and (('No route to host') in output):
if self.monitor_dumper: