From 3a4bb1aa604189618cc16c702efb9647fbe86108 Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Wed, 30 Apr 2014 13:32:04 +0100 Subject: oeqa: add proper handling for command errors where needed For use outside of tests themselves, we want a better error than AssertionError, so create one and allow us to request it when calling runCmd(). This enables us to avoid tracebacks during master image operations if the power control command fails. (From OE-Core rev: 89868383685091b0d3723fb8f29590f3f6610078) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- meta/lib/oeqa/controllers/masterimage.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'meta/lib/oeqa/controllers') diff --git a/meta/lib/oeqa/controllers/masterimage.py b/meta/lib/oeqa/controllers/masterimage.py index d151e24bd7..f2585d4860 100644 --- a/meta/lib/oeqa/controllers/masterimage.py +++ b/meta/lib/oeqa/controllers/masterimage.py @@ -20,6 +20,7 @@ import subprocess import oeqa.targetcontrol import oeqa.utils.sshcontrol as sshcontrol import oeqa.utils.commands as commands +from oeqa.utils import CommandError from abc import ABCMeta, abstractmethod @@ -94,7 +95,10 @@ class MasterImageHardwareTarget(oeqa.targetcontrol.BaseTarget): def power_ctl(self, msg): if self.powercontrol_cmd: cmd = "%s %s" % (self.powercontrol_cmd, msg) - commands.runCmd(cmd, preexec_fn=os.setsid, env=self.origenv) + try: + commands.runCmd(cmd, assert_error=False, preexec_fn=os.setsid, env=self.origenv) + except CommandError as e: + bb.fatal(str(e)) def power_cycle(self, conn): if self.powercontrol_cmd: -- cgit v1.2.3-54-g00ecf