Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions docs/imagecustomizer/api/cli/cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,12 +21,13 @@ Added in v0.3.

## --image-file=FILE-PATH

Required, unless [input.image.path](../configuration/inputImage.md#path-string) is
provided in the configuration file. If both `input.image.path` and
`--image-file` are provided, then the `--image-file` value is used.

The base image file to customize.

An input image must either be provided in the configuration file (e.g.
[input.image.path](../configuration/inputImage.md#path-string)) or on the command line.
If both a command-line input image and a configuration input image are specified, then
the command line's input image overrides the config file's input image.

This file is typically one of the standard Azure Linux core images.
But it can also be an Azure Linux image that has been customized.

Expand Down
70 changes: 70 additions & 0 deletions docs/imagecustomizer/api/configuration/azurelinuximage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
parent: Configuration
ancestor: Image Customizer
---

# azureLinuxImage type

Specifies an Azure Linux image to be used as the base image.

This feature is in preview and may be subject to breaking changes.
You may enable this feature by adding `input-image-oci` to the
[previewfeatures](../configuration/config.md#previewfeatures-string) API.

Example:

```yaml
previewFeatures:
- input-image-oci

input:
image:
azureLinux:
variant: minimal-os
version: 3.0
```

The Azure Linux images are downloaded from the
[Microsoft Artifact Registry](https://mcr.microsoft.com) (MCR).

The URI used is:

| Version | URI |
| ------------ | --------------------------------------------------------------- |
| 2.0 | mcr.microsoft.com/azurelinux/2.0/image/`<VARIANT>`:latest |
| 3.0 | mcr.microsoft.com/azurelinux/3.0/image/`<VARIANT>`:latest |
| 2.0.`<DATE>` | mcr.microsoft.com/azurelinux/2.0/image/`<VARIANT>`:2.0.`<DATE>` |
| 3.0.`<DATE>` | mcr.microsoft.com/azurelinux/3.0/image/`<VARIANT>`:3.0.`<DATE>` |

The list of Azure Linux image versions is available on MCR.
For example: the
[Azure Linux 3.0 minimal-os versions](https://mcr.microsoft.com/en-us/artifact/mar/azurelinux/3.0/image/minimal-os/tags).

Added in v1.1.

## version [string]

Specifies the version of the Azure Linux image to use as the base image.

This value is required.

Supported values include:

- `2.0`
- `3.0`
- `2.0.<DATE>` (e.g. `2.0.20251010`)
- `3.0.<DATE>` (e.g. `3.0.20250910`)

Added in v1.1.

## variant [[ociPlatform](ociplatform.md)]

Specifies the variant of the Azure Linux image to use as the base image.

This value is required.

Example values:

- `minimal-os`

Added in v1.1.
26 changes: 20 additions & 6 deletions docs/imagecustomizer/api/configuration/inputImage.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,23 @@ ancestor: Image Customizer

Specifies the configuration for the input image.

Only one child field (`path`, `oci`, or `azureLinux`) may be specified.

An input image must either be provided in the configuration file or on the command line
(e.g. [--image-file](../cli/cli.md#--image-filefile-path)).
If both a command-line input image and a configuration input image are specified, then
the command line's input image overrides the config file's input image.

Example:

```yaml
image:
path: ./base.vhdx
input:
image:
path: ./base.vhdx
```

## path [string]

Required, unless [--image-file](../cli/cli.md#--image-filefile-path) is
provided on the command line. If both `--image-file` and
`input.image.path` are provided, then the value of `--image-file` is used.

The base image file to customize.

This file is typically one of the standard Azure Linux core images.
Expand Down Expand Up @@ -60,3 +64,13 @@ You may enable this feature by adding `input-image-oci` to the
[previewfeatures](../configuration/config.md#previewfeatures-string) API.

Added in v1.1.

## azureLinux [[azureLinuxImage](azurelinuximage.md)]

Download an Azure Linux image file to use as the base image.

This feature is in preview and may be subject to breaking changes.
You may enable this feature by adding `input-image-oci` to the
[previewfeatures](../configuration/config.md#previewfeatures-string) API.

Added in v1.1.
4 changes: 4 additions & 0 deletions docs/imagecustomizer/api/configuration/ociimage.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,10 @@ This feature is in preview and may be subject to breaking changes.
You may enable this feature by adding `input-image-oci` to the
[previewfeatures](../configuration/config.md#previewfeatures-string) API.

When using official Azure Linux images from the Microsoft Artifact Registry (MCR), it is
recommended that you use the dedicated
[input.image.azureLinux](./inputImage.md#azurelinux-azurelinuximage) API.

Added in v1.1.

## uri [string]
Expand Down
13 changes: 13 additions & 0 deletions go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ require (
github.com/klauspost/compress v1.18.0
github.com/klauspost/pgzip v1.2.6
github.com/moby/sys/mountinfo v0.7.2
github.com/notaryproject/notation-go v1.3.2
github.com/opencontainers/image-spec v1.1.1
github.com/sirupsen/logrus v1.9.3
github.com/stretchr/testify v1.11.1
Expand All @@ -27,6 +28,7 @@ require (
)

require (
github.com/Azure/go-ntlmssp v0.0.0-20221128193559-754e69321358 // indirect
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751 // indirect
github.com/alecthomas/units v0.0.0-20240927000941-0f3dac36c52b // indirect
github.com/bahlo/generic-list-go v0.2.0 // indirect
Expand All @@ -35,22 +37,31 @@ require (
github.com/cenkalti/backoff/v5 v5.0.3 // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/davecgh/go-spew v1.1.1 // indirect
github.com/fxamacker/cbor/v2 v2.8.0 // indirect
github.com/go-asn1-ber/asn1-ber v1.5.7 // indirect
github.com/go-ldap/ldap/v3 v3.4.10 // indirect
github.com/go-logr/logr v1.4.3 // indirect
github.com/go-logr/stdr v1.2.2 // indirect
github.com/golang-jwt/jwt/v4 v4.5.2 // indirect
github.com/grafana/regexp v0.0.0-20240518133315-a468a5bfb3bc // indirect
github.com/grpc-ecosystem/grpc-gateway/v2 v2.27.2 // indirect
github.com/mailru/easyjson v0.7.7 // indirect
github.com/mattn/go-colorable v0.1.13 // indirect
github.com/mattn/go-isatty v0.0.20 // indirect
github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822 // indirect
github.com/notaryproject/notation-core-go v1.3.0 // indirect
github.com/notaryproject/notation-plugin-framework-go v1.0.0 // indirect
github.com/notaryproject/tspclient-go v1.0.0 // indirect
github.com/opencontainers/go-digest v1.0.0 // indirect
github.com/pmezard/go-difflib v1.0.0 // indirect
github.com/prometheus/client_golang v1.23.0 // indirect
github.com/prometheus/client_model v0.6.2 // indirect
github.com/prometheus/common v0.65.0 // indirect
github.com/prometheus/otlptranslator v0.0.2 // indirect
github.com/prometheus/procfs v0.17.0 // indirect
github.com/veraison/go-cose v1.3.0 // indirect
github.com/wk8/go-ordered-map/v2 v2.1.8 // indirect
github.com/x448/float16 v0.8.4 // indirect
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
go.opentelemetry.io/contrib/bridges/prometheus v0.63.0 // indirect
go.opentelemetry.io/otel/exporters/otlp/otlplog/otlploggrpc v0.14.0 // indirect
Expand All @@ -70,6 +81,8 @@ require (
go.opentelemetry.io/otel/sdk/metric v1.38.0 // indirect
go.opentelemetry.io/otel/trace v1.38.0 // indirect
go.opentelemetry.io/proto/otlp v1.7.1 // indirect
golang.org/x/crypto v0.41.0 // indirect
golang.org/x/mod v0.26.0 // indirect
golang.org/x/net v0.43.0 // indirect
golang.org/x/sync v0.16.0 // indirect
golang.org/x/text v0.28.0 // indirect
Expand Down
Loading
Loading