mirror of
https://github.com/openembedded/meta-openembedded.git
synced 2026-05-08 17:39:24 +00:00
meta-multimedia-image-ptest: Add images to enable BBCLASSEXTEND parallel execution
In line with other layers like meta-oe, meta-python add capability to run recipe ptests Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
@@ -2,4 +2,4 @@ require meta-filesystems-image-ptest-all.bb
|
|||||||
|
|
||||||
DESCRIPTION = "Recipe to trigger execution of all fast meta-filesystems ptest images."
|
DESCRIPTION = "Recipe to trigger execution of all fast meta-filesystems ptest images."
|
||||||
|
|
||||||
PTESTS_META_OE = "${PTESTS_FAST_META_FILESYSTEMS}"
|
PTESTS_META_FILESYSTEMS = "${PTESTS_FAST_META_FILESYSTEMS}"
|
||||||
|
|||||||
@@ -0,0 +1,17 @@
|
|||||||
|
#
|
||||||
|
# Lists of the ptest in meta-multimedia, sorted into two sets by the time they take
|
||||||
|
# Please keep these sorted in alphabetical order
|
||||||
|
#
|
||||||
|
# A first pass at getting all meta-multimedia recipes which inherit ptest
|
||||||
|
# meta_multimedia_ptest_recipes=$(bitbake-layers show-recipes --recipes-only --layer meta-multimedia --inherits ptest --bare | sed -e '1,/=== Matching recipes: ===/d')
|
||||||
|
# ptests which take less than ~30s each
|
||||||
|
|
||||||
|
PTESTS_FAST_META_MULTIMEDIA = "\
|
||||||
|
"
|
||||||
|
|
||||||
|
PTESTS_SLOW_META_MULTIMEDIA = "\
|
||||||
|
"
|
||||||
|
|
||||||
|
PTESTS_PROBLEMS_META_MULTIMEDIA = "\
|
||||||
|
libopenmpt \
|
||||||
|
"
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
DESCRIPTION = "Recipe to trigger execution of all meta-multimedia ptest images."
|
||||||
|
HOMEPAGE = "https://www.openembedded.org/"
|
||||||
|
|
||||||
|
LICENSE = "MIT"
|
||||||
|
|
||||||
|
inherit features_check nopackages
|
||||||
|
REQUIRED_DISTRO_FEATURES = "ptest"
|
||||||
|
|
||||||
|
require conf/include/ptest-packagelists-meta-multimedia.inc
|
||||||
|
|
||||||
|
# Include the full set of ptests
|
||||||
|
PTESTS_META_MULTIMEDIA = "${PTESTS_FAST_META_MULTIMEDIA} ${PTESTS_SLOW_META_MULTIMEDIA} ${PTESTS_PROBLEMS_META_MULTIMEDIA}"
|
||||||
|
|
||||||
|
do_testimage[noexec] = "1"
|
||||||
|
do_testimage[depends] = "${@' '.join(['meta-multimedia-image-ptest-'+x+':do_testimage' for x in d.getVar('PTESTS_META_MULTIMEDIA').split()])}"
|
||||||
|
|
||||||
|
do_build[depends] = "${@' '.join(['meta-multimedia-image-ptest-'+x+':do_build' for x in d.getVar('PTESTS_META_MULTIMEDIA').split()])}"
|
||||||
|
|
||||||
|
# normally image.bbclass would do this
|
||||||
|
EXCLUDE_FROM_WORLD = "1"
|
||||||
|
|
||||||
|
python () {
|
||||||
|
if bb.utils.contains('IMAGE_CLASSES', 'testimage', True, False, d):
|
||||||
|
bb.build.addtask("do_testimage", "", "", d)
|
||||||
|
}
|
||||||
@@ -0,0 +1,5 @@
|
|||||||
|
require meta-multimedia-image-ptest-all.bb
|
||||||
|
|
||||||
|
DESCRIPTION = "Recipe to trigger execution of all fast meta-multimedia ptest images."
|
||||||
|
|
||||||
|
PTESTS_META_MULTIMEDIA = "${PTESTS_FAST_META_MULTIMEDIA}"
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
inherit features_check
|
||||||
|
REQUIRED_DISTRO_FEATURES = "ptest"
|
||||||
|
|
||||||
|
require recipes-core/images/core-image-minimal.bb
|
||||||
|
require conf/include/ptest-packagelists-meta-multimedia.inc
|
||||||
|
|
||||||
|
SUMMARY = "meta-multimedia ptest test image"
|
||||||
|
|
||||||
|
DESCRIPTION += "Also including the ${MCNAME} ptest package."
|
||||||
|
HOMEPAGE = "https://www.openembedded.org/"
|
||||||
|
|
||||||
|
PTESTS_META_MULTIMEDIA = "${PTESTS_SLOW_META_MULTIMEDIA} ${PTESTS_FAST_META_MULTIMEDIA} ${PTESTS_PROBLEMS_META_MULTIMEDIA}"
|
||||||
|
|
||||||
|
IMAGE_INSTALL:append = " ${MCNAME}-ptest openssh"
|
||||||
|
|
||||||
|
BBCLASSEXTEND = "${@' '.join(['mcextend:'+x for x in d.getVar('PTESTS_META_MULTIMEDIA').split()])}"
|
||||||
|
|
||||||
|
# The image can be sufficiently large (~1.8GB) that we need to be careful that it fits in a live
|
||||||
|
# image (which has a 4GB limit), so nullify the overhead factor (1.3x out of the
|
||||||
|
# box) and explicitly add up to 1500MB.
|
||||||
|
IMAGE_OVERHEAD_FACTOR = "1.0"
|
||||||
|
IMAGE_ROOTFS_EXTRA_SPACE = "324288"
|
||||||
|
# If a particular ptest needs more space, it can be customized:
|
||||||
|
#IMAGE_ROOTFS_EXTRA_SPACE:virtclass-mcextend-<pn> = "1024288"
|
||||||
|
|
||||||
|
# ptests need more memory than standard to avoid the OOM killer
|
||||||
|
QB_MEM = "-m 1024"
|
||||||
|
# If a particular ptest needs more memroy, it can be customized:
|
||||||
|
#QB_MEM:virtclass-mcextend-<pn> = "-m 4096"
|
||||||
|
|
||||||
|
TEST_SUITES = "ping ssh parselogs ptest"
|
||||||
|
|
||||||
|
# Sadly at the moment the full set of ptests is not robust enough and sporadically fails in random places
|
||||||
|
PTEST_EXPECT_FAILURE = "1"
|
||||||
|
|
||||||
|
python () {
|
||||||
|
if not d.getVar("MCNAME"):
|
||||||
|
raise bb.parse.SkipRecipe("No class extension set")
|
||||||
|
}
|
||||||
|
|
||||||
@@ -74,6 +74,7 @@ FILES:${PN}-openmpt123-doc = "${mandir}/man1/openmpt123*"
|
|||||||
DEBIAN_NOAUTONAME:${PN} = "1"
|
DEBIAN_NOAUTONAME:${PN} = "1"
|
||||||
|
|
||||||
RDEPENDS:${PN}:libc-glibc = " \
|
RDEPENDS:${PN}:libc-glibc = " \
|
||||||
|
glibc-gconv \
|
||||||
glibc-gconv-cp1252 \
|
glibc-gconv-cp1252 \
|
||||||
glibc-gconv-ibm437 \
|
glibc-gconv-ibm437 \
|
||||||
glibc-gconv-iso8859-1 \
|
glibc-gconv-iso8859-1 \
|
||||||
|
|||||||
Reference in New Issue
Block a user