azldev-image
Read this before building, booting, or configuring an azldev image. Explains the azldev image commands (list, build, boot, test, customize) and the [images.<name>] config (kiwi definition, capabilities, tests, publish); the kiwi XML format itself is upstream KIWI NG. Triggers include image build, image boot, kiwi, container image, VM image, images.toml.
- License 许可
- MIT
- 最近更新
- 2026-11-13
- Stars
- ★ 5.4k
- Forks
- 714
01 前言 Front Matter
- name
- azldev-image
- description
- Read this before building, booting, or configuring an azldev image. Explains the azldev image commands (list, build, boot, test, customize) and the [images.<name>] config (kiwi definition, capabilities, tests, publish); the kiwi XML format itself is upstream KIWI NG. Triggers include image build, image boot, kiwi, container image, VM image, images.toml.
03 SKILL.md 正文
Build and boot images
An image assembles built RPMs into a deliverable — a container or a bootable VM.
azldev drives the build from a kiwi-ng definition; the .kiwi file itself is
upstream KIWI NG (docs) and azldev does not
own its schema.
Commands
Images are selected by their name as a positional argument (not -p).
| Task | Command |
|---|---|
| List images | azldev image list |
| Build an image (kiwi-ng) | azldev image build <name> |
| Boot an image in a QEMU VM | azldev image boot <name> |
| Run an image's tests | azldev image test <name> |
| Customize a pre-built image | azldev image customize |
azldev image build takes --local-repo / --remote-repo to add package sources and
--arch to target an architecture. When the selected distro version defines
kiwi-config-override, azldev passes it to KIWI with --config. These top-level
overrides have highest precedence. azldev image boot takes a built image name, or an
explicit --image-path / --iso. Confirm current flags with
azldev image <command> --help (there are more subcommands, e.g. inject-files).
Registering an image
Images are declared under [images.<name>] (conventionally in an images.toml):
[images.container-base]
description = "Container base image"
definition = { type = "kiwi", path = "container-base/container-base.kiwi", profile = "core" }
architectures = ["x86_64", "aarch64"]
[images.container-base.capabilities]
container = true
systemd = false
[images.container-base.properties]
openssl-fips-provider = "upstream"
[images.container-base.tests]
tests = [{ name = "smoke" }]
definition.typeiskiwi(the only type today);pathpoints at the.kiwifile;profileselects a kiwi profile (optional).- Boolean
capabilitiesare tri-state flags describing the image —machine-bootable,container,systemd,runtime-package-management,wsl,installer-media,fips-enabled, andcvm. Set only the ones that apply. propertiesis an extensible string-to-string metadata bag. For example,openssl-fips-provider = "upstream"records the image's provider policy without requiring azldev to define that property in its schema.architectures = ["x86_64", "aarch64"]is optional; when unset or empty, the image is treated as unrestricted (all recognized architectures). Set it to restrict which architecturesimage build --archallows for the image.tests.testslists the tests or test groupsazldev image testruns locally. An image ref may also setsku-groups = ["<name>", ...]to fan a test or group out across the VM sizes of one or more[sku-groups.<name>]entries; that fan-out is done by external test orchestration, not by localazldev image test. Do not mapsku-groupsonto arbitrary LISA tests: LISA tests carry their own requirements and are skipped when the SKU does not meet them, so this is meaningful only for the special case of multi-SKU performance tests.publish.channelslists the channels the image publishes to.
The kiwi definition
The .kiwi file is upstream KIWI NG XML — azldev does not own its schema. It selects the
image type (container vs. VM), package lists, repositories, and boot configuration. See
the KIWI NG documentation for the format and elements.
Generated by azldev docs agent; do not hand-edit.
04 同仓库更多 Skills
skill-metrics
[Skill] metrics, azure-monitor, aks - Query Azure Monitor metrics for Koji AKS node CPU, memory, disk usage, and pod readiness.
skill-mass-triage
[Skill] Batch-triage build failures from a JSON results file — diagnose with parallel sub-agents, bucketize by root cause, and produce a consolidated summary. Use when asked to triage a Koji results file. Triggers: batch triage, mass triage, triage results file, bucketize failures.
skill-kql-queries
[Skill] kql, queries, log analytics, container logs - KQL query templates for Koji container logs, pod errors, restarts, Kubernetes events, build job activity, and node resource usage via Log Analytics.
skill-koji-triage
[Skill] Examine Koji builds, fetch task info and logs from the Koji Web UI, identify failures, and provide root cause analysis. Use when triaging Koji build failures, investigating failed tasks, downloading build logs, or searching for broken packages. Triggers: koji failure, koji build failed, koji task, koji log, koji triage, build failure analysis.
skill-fedora-mirror-injections
[Skill] Diagnose Azure Linux Stage 1 (bootstrap-mirror) BuildRequires resolution failures and backfill missing RPMs into the prod Fedora updates mirror via the azl-infra injections file. Use when triaging stage-1 / azl4-bootstrap-mirror build failures, finding dependency gaps in the Fedora mirror, deciding whether a failure is a real mirror gap vs a transient timeout or a spec bug, adding entries to azl4-stage1-injections.yaml, or opening a PR with mirror injections. Triggers: bootstrap-mirror, stage 1 build failure, fedora mirror gap, missing BuildRequires, nothing provides crate, no match for argument, injections file, azl4-stage1-injections, mirror injection.
skill-deployment-context
[Skill] deployment context, aks, azure, koji - Resolve Koji AKS deployment context -- resource group, cluster name, subscription, Log Analytics workspace, and monitoring resource names from deployment_summary.yaml when available, or discover them dynamically from Azure.