From 0c7fa15a7350808242754944243f01155bc6784c Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sat, 2 Mar 2019 15:00:43 +0000 Subject: selftest: Add multiconfig test Add a test for a multiconfig build which mixes tiny and musl builds along with using the mcextend class to combine and package multiple images into another image. This gives the multiconfig a decent test in a scenario users may use. Signed-off-by: Richard Purdie --- meta/lib/oeqa/selftest/cases/multiconfig.py | 43 +++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 meta/lib/oeqa/selftest/cases/multiconfig.py (limited to 'meta/lib') diff --git a/meta/lib/oeqa/selftest/cases/multiconfig.py b/meta/lib/oeqa/selftest/cases/multiconfig.py new file mode 100644 index 0000000000..3c36f6e5d2 --- /dev/null +++ b/meta/lib/oeqa/selftest/cases/multiconfig.py @@ -0,0 +1,43 @@ +import os +from oeqa.selftest.case import OESelftestTestCase +from oeqa.utils.commands import bitbake +import oeqa.utils.ftools as ftools + +class MultiConfig(OESelftestTestCase): + + def test_multiconfig(self): + """ + Test that a simple multiconfig build works. This uses the mcextend class and the + multiconfig-image-packager test recipe to build a core-image-full-cmdline image which + contains a tiny core-image-minimal and a musl core-image-minimal, installed as packages. + """ + + config = """ +IMAGE_INSTALL_append_pn-core-image-full-cmdline = " multiconfig-image-packager-tiny multiconfig-image-packager-musl" +BBMULTICONFIG = "tiny musl" +""" + self.write_config(config) + + muslconfig = """ +MACHINE = "qemux86-64" +DISTRO = "poky" +TCLIBC = "musl" +TMPDIR = "${TOPDIR}/tmp-mc-musl" +""" + + tinyconfig = """ +MACHINE = "qemux86" +DISTRO = "poky-tiny" +TMPDIR = "${TOPDIR}/tmp-mc-tiny" +""" + + multiconfigdir = self.builddir + "/conf/multiconfig" + os.makedirs(multiconfigdir, exist_ok=True) + self.track_for_cleanup(multiconfigdir + "/musl.conf") + ftools.write_file(multiconfigdir + "/musl.conf", muslconfig) + self.track_for_cleanup(multiconfigdir + "/tiny.conf") + ftools.write_file(multiconfigdir + "/tiny.conf", tinyconfig) + + # Build a core-image-minimal + bitbake('core-image-full-cmdline') + -- cgit 1.2.3-korg