[PATCH 5/8] classes/testimage: if start fails, don't try to stop

Paul Eggleton
2014-04-30T12:41:41Z

If we couldn't start the target, it doesn't make sense to try and stop
it here since logically it shouldn't now be in any kind of "started"
state. (It's the start function's job to clean up after itself if it
fails - to that end, fix up the QemuTarget class so that it does.)

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
---
meta/classes/testimage.bbclass | 2 +-
meta/lib/oeqa/targetcontrol.py | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 691c7f6..285c6a9 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -209,8 +209,8 @@ def testimage_main(d):

target.deploy()

+ target.start()
try:
- target.start()
if export:
exportTests(d,tc)
else:
diff --git a/meta/lib/oeqa/targetcontrol.py b/meta/lib/oeqa/targetcontrol.py
index 02cb370..ff1bb89 100644
--- a/meta/lib/oeqa/targetcontrol.py
+++ b/meta/lib/oeqa/targetcontrol.py
@@ -124,6 +124,7 @@ class QemuTarget(BaseTarget):
self.server_ip = self.runner.server_ip
self.connection = SSHControl(ip=self.ip, logfile=self.sshlog)
else:
+ self.stop()
raise bb.build.FuncFailed("%s - FAILED to start qemu - check the task log and the boot log" % self.pn)

def stop(self):
--
1.9.0