Re: [yocto-patches] [yocto-autobuilder-helper][PATCH v4 03/11] scripts: add run-vcontainer-tests for meta-virtualization
Paul Barker <[email protected]> Wed, 15 Jul 2026 20:09:08 +0100
| Newsgroups | org.yoctoproject.lists.yocto-patches |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 2026-07-06 at 15:05 -0700, Tim Orling via lists.yoctoproject.org wrote: > Add scripts/run-vcontainer-tests, the test runner used by the > vcontainers-test job. It sources the vcontainer-tarball SDK, > discovers the meta-virtualization pytest suite, and runs a > configurable set of suites (vdkr, vpdmn, memres) against the > checked-out layers. Suites can be selected per-step so the > top-level 'vcontainer-tests' job runs the container engine > agnostic tests: > > - tests/test_container_cross_install.py > - tests/test_container_registry_script.py > - tests/test_vcontainer_auth_config.py > - tests/test_multiarch_oci.py > - tests/test_multilayer_oci.py > > The 'vdkr-tests' and 'vpdmn-tests' jobs run only their respective > suites (including memres for each container engine): > > - tests/test_vdkr.py > - tests/test_vdkr_registry.py > > and > > - tests/test_vpdmn.py > > The purpose of this script is to test the just built vcontainer-tarball, > so that it can be considered "known-good" and be published for use by > container building jobs that need the vcontainer-tarball installed. > > AI-Generated: Claude Cowork Opus 4.7 > Signed-off-by: Tim Orling <[email protected]> > --- > config.json | 31 +++++ > scripts/run-vcontainer-tests | 212 +++++++++++++++++++++++++++++++++++ > 2 files changed, 243 insertions(+) > create mode 100755 scripts/run-vcontainer-tests > > diff --git a/config.json b/config.json > index 972682d..ae13c5b 100644 > --- a/config.json > +++ b/config.json > @@ -1855,6 +1855,37 @@ > "install -d ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest && install -m 0755 ${BUILDDIR}/tmp/deploy/sdk/vcontainer-standalone.sh ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh.new && mv -f ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh.new ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh" > ] > } > + }, > + "vcontainer-tests": { > + "NEEDREPOS" : ["bitbake", "meta-openembedded", "meta-virtualization"], > + "ADDLAYER" : [ > + "${BUILDDIR}/../meta-openembedded/meta-oe", > + "${BUILDDIR}/../meta-openembedded/meta-python", > + "${BUILDDIR}/../meta-openembedded/meta-networking", > + "${BUILDDIR}/../meta-openembedded/meta-filesystems", > + "${BUILDDIR}/../meta-virtualization" > + ], > + "step1" : { > + "shortname" : "Run vcontainer pytest suite", > + "NOBUILDTOOLS" : 1, > + "EXTRACMDS" : [ > + "${SCRIPTSDIR}/run-vcontainer-tests -s vcontainer -b ${BUILDDIR} -m ${BUILDDIR}/../meta-virtualization -S ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh -r ${HELPERRESULTSDIR}" > + ] > + }, > + "step2" : { > + "shortname" : "Run vdkr pytest suite", > + "NOBUILDTOOLS" : 1, > + "EXTRACMDS" : [ > + "${SCRIPTSDIR}/run-vcontainer-tests -s vdkr -b ${BUILDDIR} -m ${BUILDDIR}/../meta-virtualization -S ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh -r ${HELPERRESULTSDIR}" > + ] > + }, > + "step3" : { > + "shortname" : "Run vpdmn pytest suite", > + "NOBUILDTOOLS" : 1, > + "EXTRACMDS" : [ > + "${SCRIPTSDIR}/run-vcontainer-tests -s vpdmn -b ${BUILDDIR} -m ${BUILDDIR}/../meta-virtualization -S ${BASE_SHAREDDIR}/pub/vcontainer-tarball-latest/vcontainer-standalone.sh -r ${HELPERRESULTSDIR}" > + ] > + } > } > }, Hi Tim, Would it make sense to merge the vcontainer-tests steps in to the vcontainer-tarball job defined in patch 2 of this series? Essentially, build the tarball (step 1), test it (steps 2-4, merged from this patch), then publish it (step 5) only if it has passed the tests. Best regards, -- Paul Barker
signature.asc
(application/pgp-signature, 252 B)
-----BEGIN PGP SIGNATURE----- iIcEABYKAC8WIQSzjPXf5Y1BDWhU2iCrY1Tsnbr0bgUCalfa1BEccGF1bEBwYmFy a2VyLmRldgAKCRCrY1Tsnbr0boo6AP9UxNdxi08EG8bWZbenx4tU7IbHXmInkRg9 1abI4iK7LgD7BeLIfbdbeCFnQ2R49yd+HZbgoINvwWDEkD3EJxLdsQI= =AQkS -----END PGP SIGNATURE-----