summaryrefslogtreecommitdiffstats
path: root/docs
Commit message (Collapse)AuthorAgeFilesLines
* container-cross-install: add tests and documentation for custom service filesBruce Ashfield2026-02-091-0/+95
| | | | | | | | | | | | | | | | | | | | | | | | | | Add pytest tests to verify CONTAINER_SERVICE_FILE varflag support: TestCustomServiceFileSupport (unit tests, no build required): - test_bbclass_has_service_file_support - test_bundle_class_has_service_file_support - test_service_file_map_syntax - test_install_custom_service_function TestCustomServiceFileBoot (boot tests, require built image): - test_systemd_services_directory_exists - test_container_services_present - test_container_service_enabled - test_custom_service_content - test_podman_quadlet_directory Documentation updates: - docs/container-bundling.md: Add "Custom Service Files" section with variable format, usage examples for both BUNDLED_CONTAINERS and container-bundle packages, and example .service/.container files - tests/README.md: Add test class entries to structure diagram and "What the Tests Check" table Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* image-oci: add layer caching for multi-layer OCI buildsBruce Ashfield2026-02-091-0/+64
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add layer caching to speed up multi-layer OCI image rebuilds. When enabled, pre-installed package layers are cached to disk and restored on subsequent builds, avoiding repeated package installation. New variables: - OCI_LAYER_CACHE: Enable/disable caching (default "1") - OCI_LAYER_CACHE_DIR: Cache location (default ${TOPDIR}/oci-layer-cache/${MACHINE}) Cache key is computed from: - Layer name and type - Sorted package list - Package versions from PKGDATA_DIR - MACHINE and TUNE_PKGARCH Cache automatically invalidates when: - Package versions change - Layer definition changes - Architecture changes Benefits: - First build: ~10-30s per layer (cache miss, packages installed) - Subsequent builds: ~1s per layer (cache hit, files copied) - Shared across recipes with identical layer definitions Build log shows cache status: NOTE: OCI Cache HIT: Layer 'base' (be88c180f651416b) NOTE: OCI: Pre-installed packages for 3 layers (cache: 3 hits, 0 misses) Also adds comprehensive pytest suite for multi-layer OCI functionality including tests for 1/2/3 layer modes and cache behavior. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* image-oci: add multi-layer OCI image support with OCI_LAYERSBruce Ashfield2026-02-091-11/+85
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add support for creating multi-layer OCI images with explicit layer definitions via OCI_LAYERS variable. This enables fine-grained control over container layer composition. New variables: - OCI_LAYER_MODE: Set to "multi" for explicit layer definitions - OCI_LAYERS: Define layers as "name:type:content" entries - packages: Install specific packages in a layer - directories: Copy directories from IMAGE_ROOTFS - files: Copy specific files from IMAGE_ROOTFS Package installation uses Yocto's package manager classes (RpmPM, OpkgPM) for consistency with do_rootfs, rather than calling dnf/opkg directly. Example usage: OCI_LAYER_MODE = "multi" OCI_LAYERS = "\ base:packages:base-files+base-passwd+netbase \ shell:packages:busybox \ app:packages:curl \ " This creates a 3-layer OCI image with discrete base, shell, and app layers that can be shared and cached independently. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* docs: add OCI multi-layer and vshell documentationBruce Ashfield2026-02-091-0/+46
| | | | | | | | | | | | Update container-bundling.md with: - New "OCI Multi-Layer Images" section explaining: - Single vs multi-layer image differences - OCI_BASE_IMAGE usage (recipe name or path) - OCI_IMAGE_CMD vs OCI_IMAGE_ENTRYPOINT behavior - When to use CMD (base images) vs ENTRYPOINT (wrapper tools) Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* docs: add container bundling and vdkr/vpdmn documentationBruce Ashfield2026-02-092-0/+342
| | | | | | | | | | | | | | | | | | | Add comprehensive documentation for the container cross-install system: - Choosing between BUNDLED_CONTAINERS and container-bundle packages - Decision guide table for selecting the right approach - Component relationships (app recipe -> container image -> bundle) - BUNDLED_CONTAINERS format and examples - container-bundle.bbclass usage - Container autostart configuration - vdkr/vpdmn virtual container runtime usage - Architecture overview and how it works - Testing instructions This provides a single reference for users wanting to bundle containers into Yocto images at build time. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* podman: Add support for rootless modeAndrei Gherzan2022-07-153-0/+20
| | | | | | | This support is disabled by default and exposed via PACKAGECONFIG. Signed-off-by: Andrei Gherzan <andrei.gherzan@huawei.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* docs: Add initial Xvisor docAlistair Francis2020-08-162-0/+19
| | | | | Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
* openvswitch: uprev to 1.10 and documentation update.Paul Barrette2013-06-033-36/+98
| | | | | | | | | -Uprev to 1.10 -removed vswitch_test.sh -added openvswitch.txt. Signed-off-by: Paul Barrette <paul.barrette@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* openvswitch: functionality sanity testJoe Slater2013-04-281-0/+36
| | | | | | | | | Instructions for creating a simple bridge that will take over eth0. You cannot be executing out of an nfs-mounted filesystem while setting up the bridge. Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
* docs: create initial documentation subdirectory structureBruce Ashfield2013-03-182-0/+16
As the number of meta-virtualization users grows, the need to document various parts of the layer grows as well. Rather than rely only on wiki and online docs, we'll create a layer-local holding tank for relevant bits of documentation. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>