solstice-ci/examples/orchestrator-image-map.yaml
Till Wegmueller c1380b1095
Add local file:// source support for orchestrator image preparation
This commit enhances image handling in the orchestrator by adding support for `file://` sources. It introduces logic to handle both local file copying and decompression options, complementing the existing `http(s)://` download functionality.
2025-11-02 18:38:56 +01:00

55 lines
2.1 KiB
YAML

# Solstice Orchestrator image and scheduling config (example)
# This file is loaded by the orchestrator at startup. Provide your own path via --config or ORCH_CONFIG.
# Keys:
# - default_label: the label used when a job does not specify runs_on.
# - aliases: optional map of label -> canonical label.
# - sizes: named size presets you can reference in future (not yet consumed by jobs), kept for operators.
# - images: map of canonical labels to image entries. Each entry can specify how to fetch/prepare an image
# and which backend it targets. All images should support NoCloud metadata.
# Default label to use when a job doesn't specify runs_on
default_label: illumos-latest
# Optional label aliases
aliases:
illumos-latest: openindiana-hipster
# Size presets (matrix): CPUs and RAM in MiB
sizes:
small:
cpu: 1
ram_mb: 1024
medium:
cpu: 2
ram_mb: 2048
large:
cpu: 4
ram_mb: 4096
# Images by canonical label
images:
# OpenIndiana Hipster cloud image (illumos). Intended for bhyve brand zones on illumos hosts.
openindiana-hipster:
# All images are backend-agnostic and must support NoCloud. Backends are chosen by host.
source: https://dlc.openindiana.org/isos/hipster/20250402/OI-hipster-cloudimage.img.zstd
#source: file:///home/toasty/ws/illumos/installer/cloudimage-ttya-openindiana-hipster.raw.zst
# Local path (raw .img) target after download/decompression. Adjust per host.
local_path: /var/lib/solstice/images/openindiana-hipster.img
decompress: zstd # if omitted, assumed already uncompressed raw or qcow2
nocloud: true
# Default resources if job doesn't specify (vCPUs, RAM MiB, disk GiB for overlay/clone)
defaults:
cpu: 2
ram_mb: 2048
disk_gb: 40
# Example Ubuntu image for libvirt/KVM on Linux hosts (commented by default)
ubuntu-22.04:
source: https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img
local_path: /var/lib/solstice/images/ubuntu-22.04-base.qcow2
decompress: none
nocloud: true
defaults:
cpu: 2
ram_mb: 2048
disk_gb: 40