v1alpha1

package
v0.23.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 27, 2025 License: Apache-2.0 Imports: 6 Imported by: 6

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the release v1alpha1 API group +kubebuilder:object:generate=true +groupName=anywhere.eks.amazonaws.com

Index

Constants

View Source
const EKSAReleaseKind = "EKSARelease"

EKSAReleaseKind is the Kind of EKSARelease.

Variables

View Source
var (
	// GroupVersion is group version used to register these objects.
	GroupVersion = schema.GroupVersion{Group: "anywhere.eks.amazonaws.com", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme.
	SchemeBuilder = &scheme.Builder{GroupVersion: GroupVersion}

	// AddToScheme adds the types in this group-version to the given scheme.
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func GenerateEKSAReleaseName

func GenerateEKSAReleaseName(version string) string

GenerateEKSAReleaseName generates the naming convention of EKSARelease from a version.

Types

type ActionsBundle

type ActionsBundle struct {
	Cexec       Image `json:"cexec"`
	Kexec       Image `json:"kexec"`
	ImageToDisk Image `json:"imageToDisk"`
	OciToDisk   Image `json:"ociToDisk"`
	WriteFile   Image `json:"writeFile"`
	Reboot      Image `json:"reboot"`
}

ActionsBundle defines the Tinkerbell template actions.

func (*ActionsBundle) DeepCopy

func (in *ActionsBundle) DeepCopy() *ActionsBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ActionsBundle.

func (*ActionsBundle) DeepCopyInto

func (in *ActionsBundle) DeepCopyInto(out *ActionsBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ArchitectureBundle

type ArchitectureBundle struct {
	Amd64 Archive `json:"amd64"`
	Arm64 Archive `json:"arm64"`
}

ArchitectureBundle defines the per-architecture binaries for an operating system.

func (*ArchitectureBundle) DeepCopy

func (in *ArchitectureBundle) DeepCopy() *ArchitectureBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ArchitectureBundle.

func (*ArchitectureBundle) DeepCopyInto

func (in *ArchitectureBundle) DeepCopyInto(out *ArchitectureBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Archive

type Archive struct {
	// +kubebuilder:validation:Required
	// The asset name
	Name string `json:"name,omitempty"`

	// +kubebuilder:validation:Required
	Description string `json:"description,omitempty"`

	// +kubebuilder:validation:Enum=linux;darwin;windows
	// Operating system of the asset
	OS string `json:"os,omitempty"`

	// +optional
	// Name of the OS like ubuntu, bottlerocket
	OSName string `json:"osName,omitempty"`

	// Architectures of the asset
	Arch []string `json:"arch,omitempty"`

	// +kubebuilder:validation:Required
	// The URI where the asset is located
	URI string `json:"uri,omitempty"`

	// +kubebuilder:validation:Required
	// The sha512 of the asset, only applies for 'file' store
	SHA512 string `json:"sha512,omitempty"`

	// +kubebuilder:validation:Required
	// The sha256 of the asset, only applies for 'file' store
	SHA256 string `json:"sha256,omitempty"`
}

Archive represents an archive asset (e.g. tarball) along with its OS/architecture metadata, and checksums for file integrity.

func (*Archive) DeepCopy

func (in *Archive) DeepCopy() *Archive

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Archive.

func (*Archive) DeepCopyInto

func (in *Archive) DeepCopyInto(out *Archive)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type AwsBundle

type AwsBundle struct {
	Version         string   `json:"version"`
	Controller      Image    `json:"controller"`
	KubeProxy       Image    `json:"kubeProxy"`
	Components      Manifest `json:"components"`
	ClusterTemplate Manifest `json:"clusterTemplate"`
	Metadata        Manifest `json:"metadata"`
}

AwsBundle defines the AWS-related images and configurations for this bundle.

func (*AwsBundle) DeepCopy

func (in *AwsBundle) DeepCopy() *AwsBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AwsBundle.

func (*AwsBundle) DeepCopyInto

func (in *AwsBundle) DeepCopyInto(out *AwsBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BinaryBundle

type BinaryBundle struct {
	// +kubebuilder:validation:Required
	// EKS Anywhere Linux binary
	LinuxBinary Archive `json:"linux"`

	// +kubebuilder:validation:Required
	// EKS Anywhere Darwin binary
	DarwinBinary Archive `json:"darwin"`
}

BinaryBundle defines the EKS Anywhere Linux and Darwin binaries for each release.

func (*BinaryBundle) DeepCopy

func (in *BinaryBundle) DeepCopy() *BinaryBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BinaryBundle.

func (*BinaryBundle) DeepCopyInto

func (in *BinaryBundle) DeepCopyInto(out *BinaryBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BottlerocketHostContainersBundle

type BottlerocketHostContainersBundle struct {
	Admin            Image `json:"admin"`
	Control          Image `json:"control"`
	KubeadmBootstrap Image `json:"kubeadmBootstrap"`
}

BottlerocketHostContainersBundle defines the Bottlerocket host containers used by the bundle.

func (*BottlerocketHostContainersBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BottlerocketHostContainersBundle.

func (*BottlerocketHostContainersBundle) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Bundles

type Bundles struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   BundlesSpec   `json:"spec,omitempty"`
	Status BundlesStatus `json:"status,omitempty"`
}

Bundles is the Schema for the bundles API.

func (*Bundles) DeepCopy

func (in *Bundles) DeepCopy() *Bundles

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Bundles.

func (*Bundles) DeepCopyInto

func (in *Bundles) DeepCopyInto(out *Bundles)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Bundles) DeepCopyObject

func (in *Bundles) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*Bundles) DefaultEksAToolsImage

func (b *Bundles) DefaultEksAToolsImage() Image

DefaultEksAToolsImage returns the default EKS Anywhere Tools image.

type BundlesList

type BundlesList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Bundles `json:"items"`
}

BundlesList contains a list of Bundles.

func (*BundlesList) DeepCopy

func (in *BundlesList) DeepCopy() *BundlesList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundlesList.

func (*BundlesList) DeepCopyInto

func (in *BundlesList) DeepCopyInto(out *BundlesList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*BundlesList) DeepCopyObject

func (in *BundlesList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type BundlesRef

type BundlesRef struct {
	// APIVersion refers to the Bundles APIVersion
	APIVersion string `json:"apiVersion"`
	// Name refers to the name of the Bundles object in the cluster
	Name string `json:"name"`
	// Namespace refers to the Bundles's namespace
	Namespace string `json:"namespace"`
}

BundlesRef refers to a Bundles resource in the cluster.

func (*BundlesRef) DeepCopy

func (in *BundlesRef) DeepCopy() *BundlesRef

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundlesRef.

func (*BundlesRef) DeepCopyInto

func (in *BundlesRef) DeepCopyInto(out *BundlesRef)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BundlesSpec

type BundlesSpec struct {
	// Monotonically increasing release number
	Number          int              `json:"number"`
	CliMinVersion   string           `json:"cliMinVersion"`
	CliMaxVersion   string           `json:"cliMaxVersion"`
	VersionsBundles []VersionsBundle `json:"versionsBundles"`
}

BundlesSpec defines the desired state of Bundles.

func (*BundlesSpec) DeepCopy

func (in *BundlesSpec) DeepCopy() *BundlesSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundlesSpec.

func (*BundlesSpec) DeepCopyInto

func (in *BundlesSpec) DeepCopyInto(out *BundlesSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type BundlesStatus

type BundlesStatus struct{}

BundlesStatus defines the observed state of Bundles.

func (*BundlesStatus) DeepCopy

func (in *BundlesStatus) DeepCopy() *BundlesStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new BundlesStatus.

func (*BundlesStatus) DeepCopyInto

func (in *BundlesStatus) DeepCopyInto(out *BundlesStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CertManagerBundle

type CertManagerBundle struct {
	Version    string `json:"version,omitempty"`
	Acmesolver Image  `json:"acmesolver"`
	Cainjector Image  `json:"cainjector"`
	Controller Image  `json:"controller"`
	// This field has been deprecated
	Ctl             *Image   `json:"ctl,omitempty"`
	Startupapicheck Image    `json:"startupapicheck"`
	Webhook         Image    `json:"webhook"`
	Manifest        Manifest `json:"manifest"`
}

CertManagerBundle defines the Cert Manager version and images for this bundle.

func (*CertManagerBundle) DeepCopy

func (in *CertManagerBundle) DeepCopy() *CertManagerBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CertManagerBundle.

func (*CertManagerBundle) DeepCopyInto

func (in *CertManagerBundle) DeepCopyInto(out *CertManagerBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CiliumBundle

type CiliumBundle struct {
	Version   string   `json:"version,omitempty"`
	Cilium    Image    `json:"cilium"`
	Operator  Image    `json:"operator"`
	Manifest  Manifest `json:"manifest"`
	HelmChart Image    `json:"helmChart,omitempty"`
}

CiliumBundle defines the Cilium version and images used for CNI in this bundle.

func (*CiliumBundle) DeepCopy

func (in *CiliumBundle) DeepCopy() *CiliumBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CiliumBundle.

func (*CiliumBundle) DeepCopyInto

func (in *CiliumBundle) DeepCopyInto(out *CiliumBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CloudStackBundle

type CloudStackBundle struct {
	Version              string   `json:"version"`
	ClusterAPIController Image    `json:"clusterAPIController"`
	KubeRbacProxy        Image    `json:"kubeRbacProxy"`
	KubeVip              Image    `json:"kubeVip"`
	Components           Manifest `json:"components"`
	Metadata             Manifest `json:"metadata"`
}

CloudStackBundle defines the CloudStack provider images and version for this bundle.

func (*CloudStackBundle) DeepCopy

func (in *CloudStackBundle) DeepCopy() *CloudStackBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CloudStackBundle.

func (*CloudStackBundle) DeepCopyInto

func (in *CloudStackBundle) DeepCopyInto(out *CloudStackBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type CoreClusterAPI

type CoreClusterAPI struct {
	Version    string   `json:"version"`
	Controller Image    `json:"controller"`
	KubeProxy  Image    `json:"kubeProxy"`
	Components Manifest `json:"components"`
	Metadata   Manifest `json:"metadata"`
}

CoreClusterAPI defines the Core Cluster API version and images used in this bundle.

func (*CoreClusterAPI) DeepCopy

func (in *CoreClusterAPI) DeepCopy() *CoreClusterAPI

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CoreClusterAPI.

func (*CoreClusterAPI) DeepCopyInto

func (in *CoreClusterAPI) DeepCopyInto(out *CoreClusterAPI)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type DockerBundle

type DockerBundle struct {
	Version         string   `json:"version"`
	Manager         Image    `json:"manager"`
	KubeProxy       Image    `json:"kubeProxy"`
	Components      Manifest `json:"components"`
	ClusterTemplate Manifest `json:"clusterTemplate"`
	Metadata        Manifest `json:"metadata"`
}

DockerBundle defines the Docker provider images and version for this bundle.

func (*DockerBundle) DeepCopy

func (in *DockerBundle) DeepCopy() *DockerBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DockerBundle.

func (*DockerBundle) DeepCopyInto

func (in *DockerBundle) DeepCopyInto(out *DockerBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EKSARelease

type EKSARelease struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec EKSAReleaseSpec `json:"spec,omitempty"`
}

EKSARelease is the mapping between release semver of EKS-A and a Bundles resource on the cluster. +kubebuilder:object:root=true +kubebuilder:subresource:status

func (*EKSARelease) DeepCopy

func (in *EKSARelease) DeepCopy() *EKSARelease

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EKSARelease.

func (*EKSARelease) DeepCopyInto

func (in *EKSARelease) DeepCopyInto(out *EKSARelease)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*EKSARelease) DeepCopyObject

func (in *EKSARelease) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type EKSAReleaseList

type EKSAReleaseList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata"`

	Items []EKSARelease `json:"items"`
}

EKSAReleaseList is a list of EKSARelease resources. +kubebuilder:object:root=true

func (*EKSAReleaseList) DeepCopy

func (in *EKSAReleaseList) DeepCopy() *EKSAReleaseList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EKSAReleaseList.

func (*EKSAReleaseList) DeepCopyInto

func (in *EKSAReleaseList) DeepCopyInto(out *EKSAReleaseList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*EKSAReleaseList) DeepCopyObject

func (in *EKSAReleaseList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type EKSAReleaseSpec

type EKSAReleaseSpec struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Type=string
	// Date of EKS-A Release
	ReleaseDate string `json:"releaseDate"`

	// +kubebuilder:validation:Required
	// EKS-A release semantic version
	Version string `json:"version"`

	// +kubebuilder:validation:Required
	// Git commit the component is built from, before any patches
	GitCommit string `json:"gitCommit"`

	// +kubebuilder:validation:Required
	// Manifest url to parse bundle information from for this EKS-A release
	BundleManifestURL string `json:"bundleManifestUrl"`

	// Reference to a Bundles resource in the cluster
	BundlesRef BundlesRef `json:"bundlesRef"`
}

EKSAReleaseSpec defines the desired state of EKSARelease.

func (*EKSAReleaseSpec) DeepCopy

func (in *EKSAReleaseSpec) DeepCopy() *EKSAReleaseSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EKSAReleaseSpec.

func (*EKSAReleaseSpec) DeepCopyInto

func (in *EKSAReleaseSpec) DeepCopyInto(out *EKSAReleaseSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EKSAReleaseStatus

type EKSAReleaseStatus struct{}

EKSAReleaseStatus defines the observed state of EKSARelease.

func (*EKSAReleaseStatus) DeepCopy

func (in *EKSAReleaseStatus) DeepCopy() *EKSAReleaseStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EKSAReleaseStatus.

func (*EKSAReleaseStatus) DeepCopyInto

func (in *EKSAReleaseStatus) DeepCopyInto(out *EKSAReleaseStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EksARelease

type EksARelease struct {
	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Type=string
	// +kubebuilder:validation:Format=date-time
	Date string `json:"date"`

	// +kubebuilder:validation:Required
	// EKS-A release version
	Version string `json:"version"`

	// +kubebuilder:validation:Required
	// +kubebuilder:validation:Minimum=1
	// Monotonically increasing release number
	Number int `json:"number"`

	// +kubebuilder:validation:Required
	// Git commit the component is built from, before any patches
	GitCommit string `json:"gitCommit"`

	// Git tag the component is built from, before any patches
	GitTag string `json:"gitTag"`

	// +kubebuilder:validation:Required
	// Manifest url to parse bundle information from for this EKS-A release
	BundleManifestUrl string `json:"bundleManifestUrl"` //nolint:revive

	// +kubebuilder:validation:Required
	// EKS Anywhere binary bundle
	EksABinary BinaryBundle `json:"eksABinary"`

	// +kubebuilder:validation:Required
	// EKS Anywhere CLI bundle
	EksACLI PlatformBundle `json:"eksACLI"`
}

EksARelease defines each release of EKS-Anywhere.

func (*EksARelease) DeepCopy

func (in *EksARelease) DeepCopy() *EksARelease

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EksARelease.

func (*EksARelease) DeepCopyInto

func (in *EksARelease) DeepCopyInto(out *EksARelease)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EksDRelease

type EksDRelease struct {
	// +kubebuilder:validation:Required
	Name string `json:"name,omitempty"`

	// +kubebuilder:validation:Required
	// Release branch of the EKS-D release like 1-19, 1-20
	ReleaseChannel string `json:"channel,omitempty"`

	// +kubebuilder:validation:Required
	// Release number of EKS-D release
	KubeVersion string `json:"kubeVersion,omitempty"`

	// +kubebuilder:validation:Required
	// Url pointing to the EKS-D release manifest using which
	// assets where created
	EksDReleaseUrl string `json:"manifestUrl,omitempty"` //nolint:revive

	// +kubebuilder:validation:Required
	// Git commit the component is built from, before any patches
	GitCommit string `json:"gitCommit,omitempty"`

	// KindNode points to a kind image built with this eks-d version
	KindNode Image `json:"kindNode,omitempty"`

	// Ami points to a collection of AMIs built with this eks-d version
	Ami OSImageBundle `json:"ami,omitempty"`

	// Ova points to a collection of OVAs built with this eks-d version
	Ova OSImageBundle `json:"ova,omitempty"`

	// Raw points to a collection of Raw images built with this eks-d version
	Raw OSImageBundle `json:"raw,omitempty"`

	// Components refers to the url that points to the EKS-D release CRD
	Components string `json:"components,omitempty"`

	// Etcdadm points to the etcdadm binary/tarball built for this eks-d kube version
	Etcdadm Archive `json:"etcdadm,omitempty"`

	// Crictl points to the crictl binary/tarball built for this eks-d kube version
	Crictl Archive `json:"crictl,omitempty"`

	// ImageBuilder points to the image-builder binary used to build eks-D based node images
	ImageBuilder Archive `json:"imagebuilder,omitempty"`

	// Containerd points to the containerd binary baked into this eks-D based node image
	Containerd Archive `json:"containerd,omitempty"`
}

EksDRelease defines the EKS-D specific release information.

func (*EksDRelease) DeepCopy

func (in *EksDRelease) DeepCopy() *EksDRelease

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EksDRelease.

func (*EksDRelease) DeepCopyInto

func (in *EksDRelease) DeepCopyInto(out *EksDRelease)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EksaBundle

type EksaBundle struct {
	Version             string   `json:"version,omitempty"`
	CliTools            Image    `json:"cliTools"`
	ClusterController   Image    `json:"clusterController"`
	DiagnosticCollector Image    `json:"diagnosticCollector"`
	Components          Manifest `json:"components"`
}

EksaBundle defines EKS Anywhere-specific images and configurations for this bundle.

func (*EksaBundle) DeepCopy

func (in *EksaBundle) DeepCopy() *EksaBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EksaBundle.

func (*EksaBundle) DeepCopyInto

func (in *EksaBundle) DeepCopyInto(out *EksaBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EtcdadmBootstrapBundle

type EtcdadmBootstrapBundle struct {
	Version    string   `json:"version"`
	Controller Image    `json:"controller"`
	KubeProxy  Image    `json:"kubeProxy"`
	Components Manifest `json:"components"`
	Metadata   Manifest `json:"metadata"`
}

EtcdadmBootstrapBundle defines the bootstrap mechanism for external etcd in this bundle.

func (*EtcdadmBootstrapBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdadmBootstrapBundle.

func (*EtcdadmBootstrapBundle) DeepCopyInto

func (in *EtcdadmBootstrapBundle) DeepCopyInto(out *EtcdadmBootstrapBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type EtcdadmControllerBundle

type EtcdadmControllerBundle struct {
	Version    string   `json:"version"`
	Controller Image    `json:"controller"`
	KubeProxy  Image    `json:"kubeProxy"`
	Components Manifest `json:"components"`
	Metadata   Manifest `json:"metadata"`
}

EtcdadmControllerBundle defines the external etcd controller images and version for this bundle.

func (*EtcdadmControllerBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EtcdadmControllerBundle.

func (*EtcdadmControllerBundle) DeepCopyInto

func (in *EtcdadmControllerBundle) DeepCopyInto(out *EtcdadmControllerBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FluxBundle

type FluxBundle struct {
	Version                string `json:"version,omitempty"`
	SourceController       Image  `json:"sourceController"`
	KustomizeController    Image  `json:"kustomizeController"`
	HelmController         Image  `json:"helmController"`
	NotificationController Image  `json:"notificationController"`
}

FluxBundle defines the Flux components and versions used in this bundle.

func (*FluxBundle) DeepCopy

func (in *FluxBundle) DeepCopy() *FluxBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FluxBundle.

func (*FluxBundle) DeepCopyInto

func (in *FluxBundle) DeepCopyInto(out *FluxBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HaproxyBundle

type HaproxyBundle struct {
	Image Image `json:"image"`
}

HaproxyBundle defines the HAProxy image used for this bundle.

func (*HaproxyBundle) DeepCopy

func (in *HaproxyBundle) DeepCopy() *HaproxyBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HaproxyBundle.

func (*HaproxyBundle) DeepCopyInto

func (in *HaproxyBundle) DeepCopyInto(out *HaproxyBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HookArch

type HookArch struct {
	Arm Archive `json:"arm"`
	Amd Archive `json:"amd"`
}

HookArch defines the Tinkerbell hook architecture-specific artifacts.

func (*HookArch) DeepCopy

func (in *HookArch) DeepCopy() *HookArch

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HookArch.

func (*HookArch) DeepCopyInto

func (in *HookArch) DeepCopyInto(out *HookArch)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type HookBundle

type HookBundle struct {
	Bootkit   Image    `json:"bootkit"`
	Docker    Image    `json:"docker"`
	Kernel    Image    `json:"kernel"`
	Initramfs HookArch `json:"initramfs"`
	Vmlinuz   HookArch `json:"vmlinuz"`
	ISO       HookArch `json:"iso"`
}

HookBundle defines the Tinkerbell hook OS images used for provisioning.

func (*HookBundle) DeepCopy

func (in *HookBundle) DeepCopy() *HookBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HookBundle.

func (*HookBundle) DeepCopyInto

func (in *HookBundle) DeepCopyInto(out *HookBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Image

type Image struct {
	// +kubebuilder:validation:Required
	// The asset name
	Name string `json:"name,omitempty"`

	// +kubebuilder:validation:Required
	Description string `json:"description,omitempty"`

	// +kubebuilder:validation:Enum=linux;darwin;windows
	// Operating system of the asset
	OS string `json:"os,omitempty"`

	// +optional
	// Name of the OS like ubuntu, bottlerocket
	OSName string `json:"osName,omitempty"`

	// Architectures of the asset
	Arch []string `json:"arch,omitempty"`

	// The image repository, name, and tag
	URI string `json:"uri,omitempty"`

	// The SHA256 digest of the image manifest
	ImageDigest string `json:"imageDigest,omitempty"`
}

Image represents a container image asset along with metadata such as OS, architecture, and registry information.

func (Image) ChartName

func (i Image) ChartName() string

ChartName constructs a typical Helm chart artifact name (with ".tgz") from the Image's name by replacing the last colon with a hyphen.

func (*Image) DeepCopy

func (in *Image) DeepCopy() *Image

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Image.

func (*Image) DeepCopyInto

func (in *Image) DeepCopyInto(out *Image)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Image) Digest

func (i *Image) Digest() string

Digest returns the SHA digest portion (after '@') of the Image URI, if present.

func (Image) Image

func (i Image) Image() string

Image returns the repository URI of the Image, excluding the tag or digest if one is present.

func (*Image) Registry

func (i *Image) Registry() string

Registry returns the registry portion of the Image URI (the substring before the first slash).

func (*Image) Repository

func (i *Image) Repository() string

Repository returns the repository name (between the registry and the tag/digest).

func (Image) Tag

func (i Image) Tag() string

Tag returns the tag portion of the Image's URI if present, otherwise an empty string.

func (*Image) Version

func (i *Image) Version() string

Version returns the tag portion (after ':') of the Image URI, if present, or empty if the URI uses digests.

func (Image) VersionedImage

func (i Image) VersionedImage() string

VersionedImage returns the full URI of the Image, including registry, repository, and tag or digest.

type KindnetdBundle

type KindnetdBundle struct {
	Version  string   `json:"version,omitempty"`
	Manifest Manifest `json:"manifest"`
}

KindnetdBundle defines the Kindnetd version and manifest for this bundle.

func (*KindnetdBundle) DeepCopy

func (in *KindnetdBundle) DeepCopy() *KindnetdBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KindnetdBundle.

func (*KindnetdBundle) DeepCopyInto

func (in *KindnetdBundle) DeepCopyInto(out *KindnetdBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubeadmBootstrapBundle

type KubeadmBootstrapBundle struct {
	Version    string   `json:"version"`
	Controller Image    `json:"controller"`
	KubeProxy  Image    `json:"kubeProxy"`
	Components Manifest `json:"components"`
	Metadata   Manifest `json:"metadata"`
}

KubeadmBootstrapBundle defines the bootstrap controller images and version for this bundle.

func (*KubeadmBootstrapBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeadmBootstrapBundle.

func (*KubeadmBootstrapBundle) DeepCopyInto

func (in *KubeadmBootstrapBundle) DeepCopyInto(out *KubeadmBootstrapBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type KubeadmControlPlaneBundle

type KubeadmControlPlaneBundle struct {
	Version    string   `json:"version"`
	Controller Image    `json:"controller"`
	KubeProxy  Image    `json:"kubeProxy"`
	Components Manifest `json:"components"`
	Metadata   Manifest `json:"metadata"`
}

KubeadmControlPlaneBundle defines the control plane controller images and version for this bundle.

func (*KubeadmControlPlaneBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeadmControlPlaneBundle.

func (*KubeadmControlPlaneBundle) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Manifest

type Manifest struct {
	// +kubebuilder:validation:Required
	// URI points to the manifest yaml file
	URI string `json:"uri,omitempty"`
}

Manifest represents a reference to a manifest, typically containing further resource definitions or configurations.

func (*Manifest) DeepCopy

func (in *Manifest) DeepCopy() *Manifest

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Manifest.

func (*Manifest) DeepCopyInto

func (in *Manifest) DeepCopyInto(out *Manifest)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type NutanixBundle

type NutanixBundle struct {
	ClusterAPIController Image    `json:"clusterAPIController"`
	CloudProvider        Image    `json:"cloudProvider,omitempty"`
	Version              string   `json:"version"`
	KubeVip              Image    `json:"kubeVip"`
	Components           Manifest `json:"components"`
	Metadata             Manifest `json:"metadata"`
	ClusterTemplate      Manifest `json:"clusterTemplate"`
}

NutanixBundle defines the Nutanix provider images and configurations for this bundle.

func (*NutanixBundle) DeepCopy

func (in *NutanixBundle) DeepCopy() *NutanixBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NutanixBundle.

func (*NutanixBundle) DeepCopyInto

func (in *NutanixBundle) DeepCopyInto(out *NutanixBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type OSImageBundle

type OSImageBundle struct {
	Bottlerocket Archive `json:"bottlerocket,omitempty"`
}

OSImageBundle defines a set of OS images (e.g., Bottlerocket) for this bundle.

func (*OSImageBundle) DeepCopy

func (in *OSImageBundle) DeepCopy() *OSImageBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OSImageBundle.

func (*OSImageBundle) DeepCopyInto

func (in *OSImageBundle) DeepCopyInto(out *OSImageBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PackageBundle

type PackageBundle struct {
	Version                   string `json:"version,omitempty"`
	Controller                Image  `json:"packageController"`
	TokenRefresher            Image  `json:"tokenRefresher"`
	CredentialProviderPackage Image  `json:"credentialProviderPackage,omitempty"`
	HelmChart                 Image  `json:"helmChart,omitempty"`
}

PackageBundle defines the EKS Anywhere package controller and related images for this bundle.

func (*PackageBundle) DeepCopy

func (in *PackageBundle) DeepCopy() *PackageBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PackageBundle.

func (*PackageBundle) DeepCopyInto

func (in *PackageBundle) DeepCopyInto(out *PackageBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PlatformBundle

type PlatformBundle struct {
	// +kubebuilder:validation:Required
	// EKS Anywhere Linux binary
	LinuxBinary ArchitectureBundle `json:"linux"`

	// +kubebuilder:validation:Required
	// EKS Anywhere Darwin binary
	DarwinBinary ArchitectureBundle `json:"darwin"`
}

PlatformBundle defines the EKS Anywhere binaries by operating system.

func (*PlatformBundle) DeepCopy

func (in *PlatformBundle) DeepCopy() *PlatformBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlatformBundle.

func (*PlatformBundle) DeepCopyInto

func (in *PlatformBundle) DeepCopyInto(out *PlatformBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type Release

type Release struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ReleaseSpec   `json:"spec"`
	Status ReleaseStatus `json:"status,omitempty"`
}

Release is the Schema for the releases API.

func (*Release) DeepCopy

func (in *Release) DeepCopy() *Release

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Release.

func (*Release) DeepCopyInto

func (in *Release) DeepCopyInto(out *Release)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*Release) DeepCopyObject

func (in *Release) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ReleaseList

type ReleaseList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []Release `json:"items"`
}

ReleaseList contains a list of Release.

func (*ReleaseList) DeepCopy

func (in *ReleaseList) DeepCopy() *ReleaseList

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseList.

func (*ReleaseList) DeepCopyInto

func (in *ReleaseList) DeepCopyInto(out *ReleaseList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ReleaseList) DeepCopyObject

func (in *ReleaseList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ReleaseSpec

type ReleaseSpec struct {
	// +kubebuilder:validation:Required
	// EKS-A Latest Release version following semver
	LatestVersion string `json:"latestVersion"`

	// +kubebuilder:validation:Required
	// List of all eks-a releases
	Releases []EksARelease `json:"releases"`
}

ReleaseSpec defines the desired state of Release.

func (*ReleaseSpec) DeepCopy

func (in *ReleaseSpec) DeepCopy() *ReleaseSpec

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseSpec.

func (*ReleaseSpec) DeepCopyInto

func (in *ReleaseSpec) DeepCopyInto(out *ReleaseSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ReleaseStatus

type ReleaseStatus struct{}

ReleaseStatus defines the observed state of Release.

func (*ReleaseStatus) DeepCopy

func (in *ReleaseStatus) DeepCopy() *ReleaseStatus

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ReleaseStatus.

func (*ReleaseStatus) DeepCopyInto

func (in *ReleaseStatus) DeepCopyInto(out *ReleaseStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SnowBundle

type SnowBundle struct {
	Version                   string   `json:"version"`
	Manager                   Image    `json:"manager"`
	KubeVip                   Image    `json:"kubeVip"`
	Components                Manifest `json:"components"`
	Metadata                  Manifest `json:"metadata"`
	BottlerocketBootstrapSnow Image    `json:"bottlerocketBootstrapSnow"`
}

SnowBundle defines the Snow provider images and configurations for this bundle.

func (*SnowBundle) DeepCopy

func (in *SnowBundle) DeepCopy() *SnowBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SnowBundle.

func (*SnowBundle) DeepCopyInto

func (in *SnowBundle) DeepCopyInto(out *SnowBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TinkBundle

type TinkBundle struct {
	TinkRelay      Image `json:"tinkRelay"`
	TinkRelayInit  Image `json:"tinkRelayInit"`
	TinkController Image `json:"tinkController"`
	TinkServer     Image `json:"tinkServer"`
	TinkWorker     Image `json:"tinkWorker"`
	Nginx          Image `json:"nginx"`
}

TinkBundle defines the images required for Tinkerbell controller and worker processes.

func (*TinkBundle) DeepCopy

func (in *TinkBundle) DeepCopy() *TinkBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TinkBundle.

func (*TinkBundle) DeepCopyInto

func (in *TinkBundle) DeepCopyInto(out *TinkBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TinkerbellBundle

type TinkerbellBundle struct {
	Version              string                `json:"version"`
	ClusterAPIController Image                 `json:"clusterAPIController"`
	KubeVip              Image                 `json:"kubeVip"`
	Envoy                Image                 `json:"envoy"`
	Components           Manifest              `json:"components"`
	Metadata             Manifest              `json:"metadata"`
	ClusterTemplate      Manifest              `json:"clusterTemplate"`
	TinkerbellStack      TinkerbellStackBundle `json:"tinkerbellStack,omitempty"`
}

TinkerbellBundle defines Tinkerbell provider images and configurations for this bundle.

func (*TinkerbellBundle) DeepCopy

func (in *TinkerbellBundle) DeepCopy() *TinkerbellBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TinkerbellBundle.

func (*TinkerbellBundle) DeepCopyInto

func (in *TinkerbellBundle) DeepCopyInto(out *TinkerbellBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type TinkerbellStackBundle

type TinkerbellStackBundle struct {
	Actions        ActionsBundle `json:"actions"`
	Boots          Image         `json:"boots"`
	Hegel          Image         `json:"hegel"`
	TinkebellChart Image         `json:"tinkerbellChart"`
	Hook           HookBundle    `json:"hook"`
	Rufio          Image         `json:"rufio"`
	Tink           TinkBundle    `json:"tink"`
	TinkerbellCrds Image         `json:"tinkerbellCrds"`
	Stack          Image         `json:"stack"`
}

TinkerbellStackBundle defines the Tinkerbell stack components for provisioning bare metal.

func (*TinkerbellStackBundle) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TinkerbellStackBundle.

func (*TinkerbellStackBundle) DeepCopyInto

func (in *TinkerbellStackBundle) DeepCopyInto(out *TinkerbellStackBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type UpgraderBundle

type UpgraderBundle struct {
	Upgrader Image `json:"upgrader"`
}

UpgraderBundle is a bundle for in-place Kubernetes version upgrader images.

func (*UpgraderBundle) DeepCopy

func (in *UpgraderBundle) DeepCopy() *UpgraderBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new UpgraderBundle.

func (*UpgraderBundle) DeepCopyInto

func (in *UpgraderBundle) DeepCopyInto(out *UpgraderBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VSphereBundle

type VSphereBundle struct {
	Version              string   `json:"version"`
	ClusterAPIController Image    `json:"clusterAPIController"`
	KubeProxy            Image    `json:"kubeProxy"`
	Manager              Image    `json:"manager"`
	KubeVip              Image    `json:"kubeVip"`
	Components           Manifest `json:"components"`
	Metadata             Manifest `json:"metadata"`
	ClusterTemplate      Manifest `json:"clusterTemplate"`
	// This field has been deprecated
	Driver *Image `json:"driver,omitempty"`
	// This field has been deprecated
	Syncer *Image `json:"syncer,omitempty"`
}

VSphereBundle defines the vSphere provider images and version for this bundle.

func (*VSphereBundle) DeepCopy

func (in *VSphereBundle) DeepCopy() *VSphereBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VSphereBundle.

func (*VSphereBundle) DeepCopyInto

func (in *VSphereBundle) DeepCopyInto(out *VSphereBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type VersionsBundle

type VersionsBundle struct {
	KubeVersion                string                           `json:"kubeVersion"`
	EndOfStandardSupport       string                           `json:"endOfStandardSupport,omitempty"`
	EksD                       EksDRelease                      `json:"eksD"`
	CertManager                CertManagerBundle                `json:"certManager"`
	ClusterAPI                 CoreClusterAPI                   `json:"clusterAPI"`
	Bootstrap                  KubeadmBootstrapBundle           `json:"bootstrap"`
	ControlPlane               KubeadmControlPlaneBundle        `json:"controlPlane"`
	VSphere                    VSphereBundle                    `json:"vSphere"`
	CloudStack                 CloudStackBundle                 `json:"cloudStack,omitempty"`
	Docker                     DockerBundle                     `json:"docker"`
	Eksa                       EksaBundle                       `json:"eksa"`
	Cilium                     CiliumBundle                     `json:"cilium"`
	Kindnetd                   KindnetdBundle                   `json:"kindnetd"`
	Flux                       FluxBundle                       `json:"flux"`
	PackageController          PackageBundle                    `json:"packageController"`
	BottleRocketHostContainers BottlerocketHostContainersBundle `json:"bottlerocketHostContainers"`
	ExternalEtcdBootstrap      EtcdadmBootstrapBundle           `json:"etcdadmBootstrap"`
	ExternalEtcdController     EtcdadmControllerBundle          `json:"etcdadmController"`
	Tinkerbell                 TinkerbellBundle                 `json:"tinkerbell,omitempty"`
	Haproxy                    HaproxyBundle                    `json:"haproxy,omitempty"`
	Snow                       SnowBundle                       `json:"snow,omitempty"`
	Nutanix                    NutanixBundle                    `json:"nutanix,omitempty"`
	Upgrader                   UpgraderBundle                   `json:"upgrader,omitempty"`
	// This field has been deprecated
	Aws *AwsBundle `json:"aws,omitempty"`
}

VersionsBundle defines the versions of each component for a specific Kubernetes version in the Bundles CRD.

func (*VersionsBundle) Charts

func (vb *VersionsBundle) Charts() map[string]*Image

Charts returns a map of Helm chart images used by different components in a VersionsBundle.

func (*VersionsBundle) CloudStackImages

func (vb *VersionsBundle) CloudStackImages() []Image

CloudStackImages returns images needed for the CloudStack provider in a VersionsBundle.

func (*VersionsBundle) DeepCopy

func (in *VersionsBundle) DeepCopy() *VersionsBundle

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VersionsBundle.

func (*VersionsBundle) DeepCopyInto

func (in *VersionsBundle) DeepCopyInto(out *VersionsBundle)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*VersionsBundle) DockerImages

func (vb *VersionsBundle) DockerImages() []Image

DockerImages returns images needed for the Docker provider in a VersionsBundle.

func (*VersionsBundle) Images

func (vb *VersionsBundle) Images() []Image

Images returns all images from the VersionsBundle by aggregating those from different providers.

func (*VersionsBundle) Manifests

func (vb *VersionsBundle) Manifests() map[string][]*string

Manifests returns a map of manifests for different components in a VersionsBundle.

func (*VersionsBundle) NutanixImages

func (vb *VersionsBundle) NutanixImages() []Image

NutanixImages returns images needed for the Nutanix provider in a VersionsBundle.

func (*VersionsBundle) Ovas

func (vb *VersionsBundle) Ovas() []Archive

Ovas returns a list of OVA archives in a VersionsBundle.

func (*VersionsBundle) SharedImages

func (vb *VersionsBundle) SharedImages() []Image

SharedImages returns images that are shared across different providers in a VersionsBundle.

func (*VersionsBundle) SnowImages

func (vb *VersionsBundle) SnowImages() []Image

SnowImages returns images needed for the Snow provider in a VersionsBundle.

func (*VersionsBundle) TinkerbellImages

func (vb *VersionsBundle) TinkerbellImages() []Image

TinkerbellImages returns images needed for the Tinkerbell provider in a VersionsBundle.

func (*VersionsBundle) VsphereImages

func (vb *VersionsBundle) VsphereImages() []Image

VsphereImages returns images needed for the vSphere provider in a VersionsBundle.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL