summaryrefslogtreecommitdiff
path: root/meta/classes
diff options
context:
space:
mode:
authorMariano Lopez <mariano.lopez@linux.intel.com>2015-09-18 13:31:32 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-21 15:39:38 +0100
commit94ab9892e87f159840432fdbfb3873d4496d4786 (patch)
tree29b7129ea93b64694f868e17d3459d64451ad9dd /meta/classes
parent2a19b13bdd5ab1505464c4c4bc0129a9a8ee0c7c (diff)
downloadopenembedded-core-94ab9892e87f159840432fdbfb3873d4496d4786.tar.gz
openembedded-core-94ab9892e87f159840432fdbfb3873d4496d4786.tar.bz2
openembedded-core-94ab9892e87f159840432fdbfb3873d4496d4786.zip
testimage.bbclass: Fix break introduced with SIGTERM handling
The SIGTERM introduced another break into runexported test, the handler is in the class TestContext while exporting it will try to convert the singnal handler to JSON, and this will throw an exception. The SIGTERM handler is not needed in the exported test, so this change will remove the handler before exporting the test. Also when a test is exported the target is not deployed/started anymore, it is not necessary. [YOCTO #8239] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/testimage.bbclass20
1 files changed, 11 insertions, 9 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index 70e28004fe..c62e391ec2 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -311,13 +311,15 @@ def testimage_main(d):
import traceback
bb.fatal("Loading tests failed:\n%s" % traceback.format_exc())
- target.deploy()
- try:
- target.start()
- if export:
- exportTests(d,tc)
- else:
+ if export:
+ signal.signal(signal.SIGTERM, tc.origsigtermhandler)
+ tc.origsigtermhandler = None
+ exportTests(d,tc)
+ else:
+ target.deploy()
+ try:
+ target.start()
starttime = time.time()
result = runTests(tc)
stoptime = time.time()
@@ -330,9 +332,9 @@ def testimage_main(d):
bb.plain(msg)
else:
raise bb.build.FuncFailed("%s - FAILED - check the task log and the ssh log" % pn )
- finally:
- signal.signal(signal.SIGTERM, tc.origsigtermhandler)
- target.stop()
+ finally:
+ signal.signal(signal.SIGTERM, tc.origsigtermhandler)
+ target.stop()
testimage_main[vardepsexclude] =+ "BB_ORIGENV"