Zarf Package Configuration
Zarf Packages contain a comprehensive description of system software and all of it's components for declaratively deploying in a disconnected environment
**/zarf.yaml**/zarf.yml
Validate
Check your file against this schema
Opens the validator with this schema already loaded. Paste your
**/zarf.yaml and it validates in your browser — nothing is uploaded.
Reference
Fields
Generated directly from the schema, following local
$refs, to two levels of nesting.
| Field | Type | Description |
|---|---|---|
apiVersion | string | The API version of the Zarf package. one of: "zarf.dev/v1alpha1… |
kindrequired | string | The kind of Zarf package. default: "ZarfPackageConfig"one of: "ZarfInitConfig", "ZarfPackageConfig… |
metadata | object | ZarfMetadata lists information about the current ZarfPackage. |
metadata.namerequired | string | Name to identify this Zarf package. |
metadata.description | string | Additional information about this package. |
metadata.version | string | Generic string set by a package author to track the package version (Note: ZarfInitConfigs will always be versioned to the CLIVersion they were created with). |
metadata.url | string | Link to package information when online. |
metadata.image | string | An image URL to embed in this package (Reserved for future use in Zarf UI). |
metadata.uncompressed | boolean | Disable compression of this package. |
metadata.architecture | string | The target cluster architecture for this package. |
metadata.yolo | boolean | Yaml OnLy Online (YOLO): True enables deploying a Zarf package without first running zarf init against the cluster. This is ideal for connected environments where you want to use existing VCS and container registries. |
metadata.authors | string | Comma-separated list of package authors (including contact info). |
metadata.documentation | string | Link to package documentation when online. |
metadata.source | string | Link to package source code when online. |
metadata.vendor | string | Name of the distributing entity, organization or individual. |
metadata.aggregateChecksum | string | Checksum of a checksums.txt file that contains checksums all the layers within the package. |
metadata.annotations | object | Annotations contains arbitrary metadata about the package. Users are encouraged to follow OCI image-spec https://github.com/opencontainers/image-spec/blob/main/annotations.md |
metadata.allowNamespaceOverride | boolean | AllowNamespaceOverride controls whether a package's namespace may be overridden. |
build | object | ZarfBuildData is written during the packager.Create() operation to track details of the created package. |
build.terminalrequired | string | The machine name that created this package. |
build.userrequired | string | The username who created this package. |
build.architecturerequired | string | The architecture this package was created on. |
build.timestamprequired | string | The timestamp when this package was created. |
build.versionrequired | string | The version of Zarf used to build this package. |
build.migrations | array<string> | Any migrations that have been run on this package. |
build.registryOverrides | object | Any registry domains that were overridden on package create when pulling images. |
build.differential | boolean | Whether this package was created with differential components. |
build.differentialPackageVersion | string | Version of a previously built package used as the basis for creating this differential package. |
build.differentialMissing | array<string> | List of components that were not included in this package due to differential packaging. |
build.lastNonBreakingVersion | string | The minimum version of Zarf that does not have breaking package structure changes. |
build.flavor | string | The flavor of Zarf used to build this package. |
componentsrequired | array | List of components to deploy in this package. |
constants | array | Constant template values applied on deploy for K8s resources. |
variables | array | Variable template values applied on deploy for K8s resources. |
Audit
What we found in this schema
- Declared draft: 2020-12
- 157 properties, 100% carrying a description, max nesting depth 6.
Standards
Specification sections for the keywords in this schema
| Keyword | Document | Section |
|---|---|---|
$id | JSON Schema Core, draft 2020-12 | §8.2.1 — The "$id" Keyword |
$ref | JSON Schema Core, draft 2020-12 | §8.2.3.1 — Direct References with "$ref" |
$schema | JSON Schema Core, draft 2020-12 | §8.1.1 — "$schema" |
additionalProperties | JSON Schema Core, draft 2020-12 | §10.3.2.3 — "additionalProperties" |
default | JSON Schema Validation, draft 2020-12 | §9.2 — "default" |
description | JSON Schema Validation, draft 2020-12 | §9.1 — "title" and "description" |
enum | JSON Schema Validation, draft 2020-12 | §6.1.2 — "enum" |
examples | JSON Schema Validation, draft 2020-12 | §9.5 — "examples" |
items | JSON Schema Core, draft 2020-12 | §10.3.1.2 — "items" |
pattern | JSON Schema Validation, draft 2020-12 | §6.3.3 — "pattern" |
patternProperties | JSON Schema Core, draft 2020-12 | §10.3.2.2 — "patternProperties" |
properties | JSON Schema Core, draft 2020-12 | §10.3.2.1 — "properties" |
required | JSON Schema Validation, draft 2020-12 | §6.5.3 — "required" |
type | JSON Schema Validation, draft 2020-12 | §6.1.1 — "type" |
Documents
- JSON Schema Core, draft 2020-12 — JSON Schema: A Media Type for Describing JSON Documents, A. Wright, H. Andrews, B. Hutton, G. Dennis, Eds., 2022. draft-bhutton-json-schema-01. An expired Internet-Draft with no formal standing in the IETF standards process; it is nonetheless the specification of record for JSON Schema 2020-12, published by json-schema.org.
- JSON Schema Validation, draft 2020-12 — JSON Schema Validation: A Vocabulary for Structural Validation of JSON, A. Wright, H. Andrews, B. Hutton, Eds., 2022.
- RFC 8259 (STD 90) — The JavaScript Object Notation (JSON) Data Interchange Format, T. Bray, Ed., 2017. The format a schema describes.
- RFC 6901 — JavaScript Object Notation (JSON) Pointer. Defines the pointer syntax used by $ref fragments and the ~0 / ~1 escapes.
Source
Attribution
This schema comes from SchemaStore, distributed under the Apache License 2.0. Copyright 2015–present Mads Kristensen and contributors. View the original file. The field table and audit on this page are generated by JSONTools.tools; the schema itself is unmodified.