Skip to content

Feature: _iso

Description

Features

This feature creates a bootable ISO image that:

  • Boots on both UEFI and Legacy BIOS systems
  • Provides a live Garden Linux environment running from RAM
  • Includes an interactive installation script (/opt/install/install.sh)
  • Uses dracut with dmsquash-live module for live boot
  • Creates a hybrid ISO that can boot from CD-ROM or USB drive

ISO Contents

  • Bootloader:
    • UEFI: systemd-boot with Unified Kernel Image (UKI)
    • Legacy BIOS: syslinux/isolinux
  • Live root filesystem: Compressed squashfs image in /live/squashfs.img
  • Kernel and initrd: Located in /boot/images/
  • Installation script: Interactive installer at /opt/install/install.sh

Installation Modes

Interactive Installation

Boot the ISO and manually run the installation script:

  1. Boot from ISO (auto-login as root on console)
  2. Run /opt/install/install.sh
  3. Select target disk and confirm
  4. Reboot after installation

Automatic Installation

Combine with the _install feature to create an auto-installing ISO:

bash
./build metal-server_prod_iso_install

See the _install feature documentation for details on automatic installation.

Testing

Test ISO images using QEMU:

bash
./test .build/metal-server_prod_iso-amd64-*.iso

For ISOs with the _install feature, the test framework automatically detects this and runs a two-stage installation test (install to disk, then boot from disk and run tests).

  • _install - Adds automatic installation on first boot
  • _fwcfg - Enables QEMU fw_cfg script support for test automation

Unit testing

This feature does not support unit tests.

Meta

typeflag
artifact.iso
included_featuresNone
excluded_featuresNone