diff options
| -rw-r--r-- | classes/container-cross-install.bbclass | 6 | ||||
| -rw-r--r-- | conf/layer.conf | 4 | ||||
| -rw-r--r-- | recipes-devtools/qemu/qemu-system-native_%.bbappend | 6 |
3 files changed, 12 insertions, 4 deletions
diff --git a/classes/container-cross-install.bbclass b/classes/container-cross-install.bbclass index d365d7a1..d18c6436 100644 --- a/classes/container-cross-install.bbclass +++ b/classes/container-cross-install.bbclass | |||
| @@ -830,7 +830,8 @@ Or remove it from BUNDLED_CONTAINERS if not needed. | |||
| 830 | VRUNNER_CMD="${VRUNNER_CMD} -- ${DOCKER_CONTAINERS}" | 830 | VRUNNER_CMD="${VRUNNER_CMD} -- ${DOCKER_CONTAINERS}" |
| 831 | 831 | ||
| 832 | bbnote "Running batch import for Docker containers..." | 832 | bbnote "Running batch import for Docker containers..." |
| 833 | TMPDIR="${WORKDIR}" eval ${VRUNNER_CMD} | 833 | # Prepend native sysroot to PATH so vrunner finds the correct QEMU (with virtfs support) |
| 834 | PATH="${STAGING_BINDIR_NATIVE}:${PATH}" TMPDIR="${WORKDIR}" eval ${VRUNNER_CMD} | ||
| 834 | 835 | ||
| 835 | if [ $? -ne 0 ]; then | 836 | if [ $? -ne 0 ]; then |
| 836 | bbfatal "Docker batch import failed" | 837 | bbfatal "Docker batch import failed" |
| @@ -894,7 +895,8 @@ Or remove it from BUNDLED_CONTAINERS if not needed. | |||
| 894 | VRUNNER_CMD="${VRUNNER_CMD} -- ${PODMAN_CONTAINERS}" | 895 | VRUNNER_CMD="${VRUNNER_CMD} -- ${PODMAN_CONTAINERS}" |
| 895 | 896 | ||
| 896 | bbnote "Running batch import for Podman containers..." | 897 | bbnote "Running batch import for Podman containers..." |
| 897 | TMPDIR="${WORKDIR}" eval ${VRUNNER_CMD} | 898 | # Prepend native sysroot to PATH so vrunner finds the correct QEMU (with virtfs support) |
| 899 | PATH="${STAGING_BINDIR_NATIVE}:${PATH}" TMPDIR="${WORKDIR}" eval ${VRUNNER_CMD} | ||
| 898 | 900 | ||
| 899 | if [ $? -ne 0 ]; then | 901 | if [ $? -ne 0 ]; then |
| 900 | bbfatal "Podman batch import failed" | 902 | bbfatal "Podman batch import failed" |
diff --git a/conf/layer.conf b/conf/layer.conf index 85694344..6eadc87f 100644 --- a/conf/layer.conf +++ b/conf/layer.conf | |||
| @@ -76,4 +76,8 @@ USER_CLASSES:append = " meta-virt-hosts" | |||
| 76 | 76 | ||
| 77 | HOSTTOOLS_NONFATAL += "getent" | 77 | HOSTTOOLS_NONFATAL += "getent" |
| 78 | 78 | ||
| 79 | # Propagate virtualization/vcontainer to native DISTRO_FEATURES for qemu virtfs support | ||
| 80 | # This enables virtio-9p in qemu-system-native for container-cross-install batch imports | ||
| 81 | DISTRO_FEATURES_NATIVE:append = " ${@bb.utils.contains_any('DISTRO_FEATURES', 'vcontainer virtualization', 'virtualization', '', d)}" | ||
| 82 | |||
| 79 | NON_MULTILIB_RECIPES:append:x86-64 = " kubernetes" | 83 | NON_MULTILIB_RECIPES:append:x86-64 = " kubernetes" |
diff --git a/recipes-devtools/qemu/qemu-system-native_%.bbappend b/recipes-devtools/qemu/qemu-system-native_%.bbappend index d360af80..b04b6934 100644 --- a/recipes-devtools/qemu/qemu-system-native_%.bbappend +++ b/recipes-devtools/qemu/qemu-system-native_%.bbappend | |||
| @@ -5,6 +5,8 @@ | |||
| 5 | # Enable virtfs (virtio-9p) for vcontainer cross-architecture container bundling. | 5 | # Enable virtfs (virtio-9p) for vcontainer cross-architecture container bundling. |
| 6 | # This is required for the fast batch-import path in container-cross-install. | 6 | # This is required for the fast batch-import path in container-cross-install. |
| 7 | # | 7 | # |
| 8 | # Only applied when "vcontainer" or "virtualization" is in DISTRO_FEATURES. | 8 | # Note: Native recipes don't see target DISTRO_FEATURES directly. |
| 9 | # The layer.conf propagates virtualization to DISTRO_FEATURES_NATIVE when | ||
| 10 | # vcontainer or virtualization is in the target DISTRO_FEATURES. | ||
| 9 | 11 | ||
| 10 | PACKAGECONFIG:append = " ${@bb.utils.contains_any('DISTRO_FEATURES', 'vcontainer virtualization', 'virtfs', '', d)}" | 12 | PACKAGECONFIG:append = " ${@bb.utils.contains('DISTRO_FEATURES_NATIVE', 'virtualization', 'virtfs', '', d)}" |
