Skip to contentSkip to conversation

testimage: Add missing dependency

PATCH New brian avery 1 participant 2 messages Apr 20, 2017

lore
Share & tools
lore
#0 lore raw

cover testimage: Add missing dependency

As part of RSS, qemu-native-helper got an additional task: "addto_recipe_sysroot". This task is usually run as part of an image build. In some use cases like downloading image artefacts and then running testimage, it can be skipped. This adds the dependency explicitly.

I also added an error message that catches running testimage before creating or downloading the images.

-brian

The following changes since commit 55a53f53263ff4bf7bd6d0c454c464e595e11e4c:

build-appliance-image: Update to master head revision (2017-04-20 08:16:46 +0100)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib bavery/testimage/11375_2
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=bavery/testimage/11375_2

brian avery (1):
testimage.bbclass: add additional dependency

 meta/classes/testimage.bbclass | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

--
1.9.1

#1 lore raw

PATCH 1/1 testimage.bbclass: add additional dependency

qemu-native-helper has an additional task that needs to be run in order for testimage to work. This task is usually run by default in a full build but there are use cases where it might be skipped. This commit adds the dependency explicitly.

Also, this commit adds a try/catch error message to make it clearer what you need to do if you try to run testimage before you have built or downloaded the image artifacts.

[YOCTO #11375]

---
 meta/classes/testimage.bbclass | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
meta/classes/testimage.bbclass +6 -2
index a259423..fb21460 100644
@@ -71,7 +71,7 @@ TEST_QEMUBOOT_TIMEOUT ?= "1000"
 TEST_TARGET ?= "qemu"
 
 TESTIMAGEDEPENDS = ""
-TESTIMAGEDEPENDS_qemuall = "qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot"
+TESTIMAGEDEPENDS_qemuall = "qemu-native:do_populate_sysroot qemu-helper-native:do_populate_sysroot qemu-helper-native:do_addto_recipe_sysroot"
 TESTIMAGEDEPENDS += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'cpio-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS_qemuall += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'cpio-native:do_populate_sysroot', '', d)}"
 TESTIMAGEDEPENDS_qemuall += "${@bb.utils.contains('IMAGE_PKGTYPE', 'rpm', 'createrepo-c-native:do_populate_sysroot', '', d)}"
@@ -166,7 +166,11 @@ def testimage_main(d):
                              d.getVar('IMAGE_LINK_NAME')))
 
     tdname = "%s.testdata.json" % image_name
-    td = json.load(open(tdname, "r"))
+    try:
+        td = json.load(open(tdname, "r"))
+    except (FileNotFoundError) as err:
+         bb.fatal('File %s Not Found. Have you built the image with INHERIT+="testimage" in the conf/local.conf?' % tdname)
+
     # Some variables need to be updates (mostly paths) with the
     # ones of the current environment because some tests require them.
     updateTestData(d, td, d.getVar('TESTIMAGE_UPDATE_VARS').split())
Signature · 1 line
1.9.1