machine_image says what to boot. Leave it out and you get ubuntu2204:
Canonical’s newest Ubuntu 22.04 image for the runner’s architecture, looked up
in your region at launch time.
Per cloud
- AWS
- Google Cloud
- Azure
An AMI ID is region-specific, so pin the
region alongside it or keep
one definition per region.Any image your account can launch
There is no image allowlist. Anairship.yaml can name any image the
connected credential can boot. Architecture mismatches are refused, and so are
marketplace images a publisher has deprecated, but trustworthiness is not
something Airship can judge — the authority is the same one a workflow file
already has. If that is not acceptable for a repository, do not activate it.
Pointing at your own image
Baking the runner and your toolchain into an image is the single biggest cold-start win, and it removes the package-mirror traffic from every job. The recipe, and what Airship looks for inside the image, is on its own page:Baking a custom image
What to pre-install, where the runner tarball goes, and how to keep the
image’s runner version current.
Windows
A Windows image gets a Windows boot script automatically — there is no flag to set. The extras worth knowing (an interactive desktop session, the install path, the local account) are on Windows runners.The
ubuntu2204 and ubuntu2404 aliases are Linux. A job that asks for the
windows label is only served by a definition naming a Windows image of
your own.GPU images
An image that already ships an NVIDIA driver — a deep-learning image, for instance — is detected and left alone. On a stock Ubuntu image withgpu:
set, Airship installs the driver during boot, which costs a minute or two per
job; bake it into an image if GPU jobs are frequent.