Go to file
Christopher Clark 0f2e3d24a4 xtf: add testimage integration to run XTF test cases in OEQA
Add a new minimal OEQA test case to run the Xen Test Framework
test runner in the standard testimage step. Tested with qemux86-64
and designed for compatibility with Arm when XTF supports it.

To enable, append to local.conf:
    INHERIT += "testimage"
    QEMU_USE_SLIRP = "1"
    TEST_SERVER_IP = "127.0.0.1"

To run: bitbake -c testimage xtf-image

For inspection while it runs, at another shell prompt:
 * Observe the image booting:
 tail -f ${TMPDIR}/work/qemux86_64-*/xtf-image/*/testimage/qemu_boot_log.*
 * Observe the tests running once boot has completed:
 tail -f ${TMPDIR}/work/qemux86_64-*/xtf-image/*/temp/log.do_testimage

The XTF test sequence by default is a single XTF test case with minimal
hardware dependency to ensure that Xen is running, the Xen toolstack is
functional and XTF works. Additional XTF test cases for an image can be
configured via variables that are documented in the OEQA test case:
   * XTF_TEST_CASES_POPULATE
   * XTF_TEST_CASES_SKIP
   * XTF_TEST_CASES_REQUIRE

Since testimage requires a functioning network to perform the tests on
the image and the qemu MACHINES do not have networking enabled
this commit provides a new qemuboot-testimage-network bbclass to add an
image postprocess command to enable a functional eth0 for qemu MACHINES.

Signed-off-by: Christopher Clark <christopher.clark@starlab.io>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
2021-09-02 16:36:23 -04:00
classes xtf: add testimage integration to run XTF test cases in OEQA 2021-09-02 16:36:23 -04:00
conf conf: set compatibility to honister 2021-08-02 17:18:38 -04:00
docs docs: Add initial Xvisor doc 2020-08-16 21:18:21 -04:00
dynamic-layers global: overrides syntax conversion 2021-08-02 17:17:53 -04:00
files fs-perms-nagios.txt: add perms conf file 2018-09-06 12:45:17 -04:00
lib/oeqa/runtime/cases xtf: add testimage integration to run XTF test cases in OEQA 2021-09-02 16:36:23 -04:00
recipes-containers cri-o: update to 1.22-dev 2021-08-27 10:50:45 -04:00
recipes-core busybox-initrd: rename to match 1.34.0 version from oe-core 2021-08-27 10:50:45 -04:00
recipes-devtools python-cached: synchronize with meta-python 2021-09-01 22:52:12 -04:00
recipes-extended xtf: add testimage integration to run XTF test cases in OEQA 2021-09-02 16:36:23 -04:00
recipes-graphics/xorg-xserver global: overrides syntax conversion 2021-08-02 17:17:53 -04:00
recipes-kernel kernel: add 5.13 pattern, remove 5.4 2021-08-19 10:10:33 -04:00
recipes-networking global: overrides syntax conversion 2021-08-02 17:17:53 -04:00
scripts/lib/wic/plugins/source wic: add support for bootable pcbios partition with Xen hypervisor 2020-02-27 16:59:22 -05:00
wic xen-image-minimal: supply bootloader config for qemux86-64 machine 2021-09-02 16:36:23 -04:00
.gitignore xtf: add testimage integration to run XTF test cases in OEQA 2021-09-02 16:36:23 -04:00
COPYING.MIT Initial meta-xen layer documentation. 2012-06-21 15:51:11 -06:00
MAINTAINERS layer: Add MAINTAINERS file 2020-02-27 17:10:30 -05:00
meta-virt-roadmap.txt docs: roadmap: add missing workflow items 2019-10-28 11:56:10 -04:00
README global: overrides syntax conversion 2021-08-02 17:17:53 -04:00

meta-virtualization

This layer provides support for building Xen, KVM, Libvirt, and associated packages necessary for constructing OE-based virtualized solutions.

The bbappend files for some recipes (e.g. linux-yocto) in this layer need to have 'virtualization' in DISTRO_FEATURES to have effect. To enable them, add in configuration file the following line.

DISTRO_FEATURES:append = " virtualization"

If meta-virtualization is included, but virtualization is not enabled as a distro feature a warning is printed at parse time:

You have included the meta-virtualization layer, but
'virtualization' has not been enabled in your DISTRO_FEATURES. Some bbappend files
may not take effect. See the meta-virtualization README for details on enabling
virtualization support.

If you know what you are doing, this warning can be disabled by setting the following variable in your configuration:

SKIP_META_VIRT_SANITY_CHECK = 1

Depending on your use case, there are other distro features in meta-virtualization that may also be enabled:

  • xen: enables xen functionality in various packages (kernel, libvirt, etc)
  • kvm: enables KVM configurations in the kernel and autoloads modules
  • k8s: enables kubernets configurations in the kernel, tools and configuration
  • aufs: enables aufs support in docker and linux-yocto
  • x11: enable xen and libvirt functionality related to x11
  • selinux: enables functionality in libvirt and lxc
  • systemd: enable systemd services and unit files (for recipes for support)
  • sysvinit: enable sysvinit scripts (for recipes with support)
  • seccomp: enable seccomp support for packages that have the capability.

Dependencies

This layer depends on:

URI: git://github.com/openembedded/openembedded-core.git branch: master revision: HEAD prio: default

URI: git://github.com/openembedded/meta-openembedded.git branch: master revision: HEAD layers: meta-oe meta-networking meta-filesystems meta-python

BBFILE_PRIORITY_openembedded-layer = "4"

Required for Xen XSM policy: URI: git://git.yoctoproject.org/meta-selinux branch: master revision: HEAD prio: default

Required for Ceph: URI: git://git.yoctoproject.org/meta-cloud-services branch: master revision: HEAD prio: default

Required for cri-o: URI: git://github.com/advancedtelematic/meta-updater URI: git://git.yoctoproject.org/meta-selinux URI: git://git.yoctoproject.org/meta-security branch: master revision: HEAD prio: default

Community / Colaboration

Repository: https://git.yoctoproject.org/cgit/cgit.cgi/meta-virtualization/ Mailing list: https://lists.yoctoproject.org/g/meta-virtualization IRC: libera.chat #meta-virt channel

Maintenance

Send pull requests, patches, comments or questions to meta-virtualization@lists.yoctoproject.org

Maintainer: Bruce Ashfield bruce.ashfield@gmail.com see MAINTAINERS for more specific information

When sending single patches, please using something like: $ git send-email -1 -M --to meta-virtualization@lists.yoctoproject.org --subject-prefix='meta-virtualization][PATCH'

License

All metadata is MIT licensed unless otherwise stated. Source code included in tree for individual recipes is under the LICENSE stated in each recipe (.bb file) unless otherwise stated.