refraction-forger/images/ubuntu-rust-ci.kdl
Till Wegmueller 3cb982d35c
Add Ubuntu/apt support, ext4 QCOW2 builds, and OCI artifact push
- Extend spec-parser schema with distro, AptMirror, filesystem, and
  push-to fields for Ubuntu image support
- Add debootstrap/apt tool wrappers and Phase 1 distro dispatch
  (OmniOS IPS vs Ubuntu apt)
- Add ext4+GPT+EFI QCOW2 build path alongside existing ZFS pipeline
- Add partition tools (sgdisk, mkfs) and loopback partprobe support
- Add ORAS-compatible OCI artifact push/pull for QCOW2 files with
  custom media types (vnd.cloudnebula.qcow2)
- Add --artifact flag to forger push command
- Add auto-push from Phase 2 when target has push-to set
- Add omnios-rust-ci and ubuntu-rust-ci KDL image specs
- Update inspect command to display new fields

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 16:29:12 +01:00

38 lines
899 B
Text

metadata name="ubuntu-rust-ci" version="0.1.0" description="Ubuntu 22.04 CI image with Rust"
distro "ubuntu-22.04"
repositories {
apt-mirror "http://archive.ubuntu.com/ubuntu" suite="jammy" components="main universe"
}
packages {
package "build-essential"
package "pkg-config"
package "curl"
package "git"
package "ca-certificates"
package "rustc"
package "cargo"
package "libssl-dev"
package "openssh-server"
package "cloud-init"
package "grub-efi-amd64"
package "linux-image-generic"
}
customization {
user "ci"
}
overlays {
shadow username="root" password="$5$kr1VgdIt$OUiUAyZCDogH/uaxH71rMeQxvpDEY2yX.x0ZQRnmeb9"
ensure-dir "/home/ci" owner="ci" group="ci" mode="755"
}
target "qcow2" kind="qcow2" {
disk-size "8G"
bootloader "grub"
filesystem "ext4"
push-to "ghcr.io/cloudnebulaproject/ubuntu-rust:latest"
}