Documentation
¶
Overview ¶
Package distro is for the api representation of Distro Package
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ZarfDistro ¶
type ZarfDistro struct {
APIVersion string `json:"apiVersion,omitempty" jsonschema:"enum=zarf.dev/v1alpha1"`
Kind v1alpha1.ZarfDistroKind `json:"kind" jsonschema:"enum=ZarfDistro"`
Metadata ZarfDistroMetadata `json:"metadata"`
Build ZarfDistroBuildData `json:"build,omitempty"`
Spec ZarfDistroSpec `json:"spec"`
}
ZarfDistro root information
func (ZarfDistro) IsSBOMAble ¶
func (distro ZarfDistro) IsSBOMAble() bool
IsSBOMAble has files that can have a sbom generated from
type ZarfDistroActions ¶
type ZarfDistroActions struct {
// OnCreate actions
OnCreate zarf.ZarfComponentActionSet `json:"onCreate,omitempty"`
}
ZarfDistroActions that are ran during certain phases of the distro package
type ZarfDistroBuildData ¶
type ZarfDistroBuildData struct {
// Architecture of the distro package
Architecture string `json:"architecture,omitempty"`
// Timestamp of when the distro was created
Timestamp string `json:"timestamp,omitempty"`
// Version of the distro is created as
Version string `json:"version,omitempty"`
// RegistryOverrides for who the distro was created with
RegistryOverrides map[string]string `json:"registryOverrides,omitempty"`
}
ZarfDistroBuildData time information
type ZarfDistroConfig ¶
type ZarfDistroConfig struct {
// Files are files that will be populated on the hosts, regardless of what install method is used
Files v1alpha1.ZarfFiles `json:"files,omitempty"`
// ImagesConfig for the images
ImagesConfig ZarfDistroImageConfig `json:"imageConfig,omitempty"`
// OS for the node os
OS ZarfDistroOS `json:"os,omitempty"`
// Engine is used for configuring the engine
Engine dig.Mapping `json:"engine,omitempty"`
}
ZarfDistroConfig holds values for distro config
type ZarfDistroImageConfig ¶
type ZarfDistroImageConfig struct {
// Compression that the image tar balls will be compressed with
Compression string `json:"compression,omitempty" jsonschema:"default=none,enum=none,enum=gz,enum=zstd"`
// Path that the image tar balls will be uploaded too
Path string `json:"path,omitempty"`
// Images list of the various required offline images
Images []string `json:"images,omitempty"`
}
ZarfDistroImageConfig holds values for the images that will be populated on a host
type ZarfDistroMetadata ¶
type ZarfDistroMetadata struct {
Uncompressed bool `json:"uncompressed,omitempty" jsonschema:"default=false"`
Architecture string `json:"architecture,omitempty" jsonschema:"default=amd64,enum=amd64,enum=arm64"`
Name string `json:"name" jsonschema:"pattern=^[a-z0-9][a-z0-9\\-]*$"`
Description string `json:"description,omitempty"`
Version string `json:"version,omitempty"`
Annotations map[string]string `json:"annotations,omitempty"`
}
ZarfDistroMetadata for the distro package
type ZarfDistroOS ¶
type ZarfDistroOS struct {
// Sysctl a map of sysctl values that will be applied to a host
Sysctl map[string]string `json:"sysctl,omitempty"`
// FAPolicyd config file contents that will be applied to a host
FAPolicyd string `json:"fapolicyd,omitempty"`
// Files that will be uploaded to a host
Files v1alpha1.ZarfFiles `json:"files,omitempty"`
}
ZarfDistroOS holds specific values for apply to a host
type ZarfDistroSpec ¶
type ZarfDistroSpec struct {
// Type of distro that is being created
Type string `json:"type" jsonschema:"enum=rke2,enum=k3s"`
// Version of the engine
Version string `json:"version"`
// Actions that are ran during some package phases
Actions ZarfDistroActions `json:"actions,omitempty"`
// Config for the distro
Config ZarfDistroConfig `json:"config"`
}
ZarfDistroSpec that manage the distro spec
Click to show internal directories.
Click to hide internal directories.