summaryrefslogtreecommitdiffstats
path: root/meta/classes/testimage.bbclass
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-18 11:33:12 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2018-06-21 09:34:40 +0100
commitfae0a9a4397e2878c2642a38ce82ec18fe60bc5a (patch)
treee3348bd9d0b9ffb414839af13ab68490f4332f7b /meta/classes/testimage.bbclass
parent83d791089fb220553d4df144f56ebea61d9e0713 (diff)
downloadpoky-fae0a9a4397e2878c2642a38ce82ec18fe60bc5a.tar.gz
image/testimage: Rework auto image test execution
The TEST_IMAGE interface has never particularly worked and image testing currently gets configured manually. This reworks the interface to better serve the needs of its users, replacing it with TESTIMAGE_AUTO. This does away with the need for the separate class due to better bitbake APIs for changing tasks. TESTIMAGE_AUTO will automatically boot under qemu any image that is built. It also adds in dependencies so that any SDK for which testing is requested will automatically be built first. The code in bitbake.conf was error prone (e.g. testsdk wasn't considered), this improves it to standardise on IMAGE_CLASSES as the standard configuration mechanism. (From OE-Core rev: b34d44f3dfea8254826a46701a4fe3769a900434) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/testimage.bbclass')
-rw-r--r--meta/classes/testimage.bbclass10
1 files changed, 9 insertions, 1 deletions
diff --git a/meta/classes/testimage.bbclass b/meta/classes/testimage.bbclass
index c17a7c604b..eb2181309e 100644
--- a/meta/classes/testimage.bbclass
+++ b/meta/classes/testimage.bbclass
@@ -10,6 +10,11 @@
10# - first add IMAGE_CLASSES += "testimage" in local.conf 10# - first add IMAGE_CLASSES += "testimage" in local.conf
11# - build a qemu core-image-sato 11# - build a qemu core-image-sato
12# - then bitbake core-image-sato -c testimage. That will run a standard suite of tests. 12# - then bitbake core-image-sato -c testimage. That will run a standard suite of tests.
13#
14# The tests can be run automatically each time an image is built if you set
15# TESTIMAGE_AUTO = "1"
16
17TESTIMAGE_AUTO ??= "0"
13 18
14# You can set (or append to) TEST_SUITES in local.conf to select the tests 19# You can set (or append to) TEST_SUITES in local.conf to select the tests
15# which you want to run for your target. 20# which you want to run for your target.
@@ -382,4 +387,7 @@ def package_extraction(d, test_suites):
382 387
383testimage_main[vardepsexclude] += "BB_ORIGENV DATETIME" 388testimage_main[vardepsexclude] += "BB_ORIGENV DATETIME"
384 389
385inherit testsdk 390python () {
391 if oe.types.boolean(d.getVar("TESTIMAGE_AUTO") or "False"):
392 bb.build.addtask("testimage", "do_build", "do_image_complete", d)
393}