summaryrefslogtreecommitdiffstats
path: root/classes/xen-guest-bundle.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* xen-guest-bundle: add guest import system for 3rd-party imagesBruce Ashfield2026-02-261-18/+254
| | | | | | | | | | | | | | | | | | | | | | | | | | Add extensible import system to convert fetched source formats (tarballs, qcow2, etc.) into Xen-ready disk images at build time. Built-in import types: - rootfs_dir: extracted directory → ext4 via mkfs.ext4 -d - qcow2: QCOW2 → raw via qemu-img convert - ext4/raw: copy passthrough Per-guest varflags control the import: XEN_GUEST_SOURCE_TYPE[guest] = "rootfs_dir" XEN_GUEST_SOURCE_FILE[guest] = "alpine-rootfs" XEN_GUEST_IMAGE_SIZE[guest] = "128" Also adds three kernel modes for resolve_bundle_kernel(): - (not set): shared host kernel from DEPLOY_DIR_IMAGE - "path": custom kernel, checks UNPACKDIR then DEPLOY_DIR_IMAGE - "none": HVM guest, omits kernel= from config Native tool dependencies and fakeroot are resolved automatically at parse time. External guests emit a single license warning at do_compile time (prefunc, not parse-time). Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* xen-guest-bundle: add bbclass for packaging Xen guest bundlesBruce Ashfield2026-02-261-0/+405
New bbclass that creates installable packages bundling Xen guest images (rootfs + kernel + config). When installed via IMAGE_INSTALL into a Dom0 image that inherits xen-guest-cross-install, guests are automatically deployed by merge_installed_xen_bundles(). Features: - Parse-time dependency generation from XEN_GUEST_BUNDLES - Per-guest varflags for memory, vcpus, vif, extra, disk, name - Custom config file support via XEN_GUEST_CONFIG_FILE varflag - Explicit rootfs/kernel path overrides for external guests - Manifest-based packaging for cross-install integration Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>