v1alpha1

package
v1.101.2 Latest Latest
Warning

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

Go to latest
Published: Aug 20, 2024 License: Apache-2.0 Imports: 8 Imported by: 535

Documentation

Overview

Package v1alpha1 is the v1alpha1 version of the API. +groupName=extensions.gardener.cloud

Index

Constants

View Source
const (
	// ContainerRuntimeResource is a constant for the name of the Container Runtime Extension resource.
	ContainerRuntimeResource = "ContainerRuntime"
	// CRINameWorkerLabel is the name of the label describing the CRI name used in this node.
	CRINameWorkerLabel = "worker.gardener.cloud/cri-name"
	// ContainerRuntimeNameWorkerLabel is a label describing a Container Runtime which should be supported on the node.
	ContainerRuntimeNameWorkerLabel = "containerruntime.worker.gardener.cloud/%s"
)
View Source
const (
	// ScaleDownUtilizationThresholdAnnotation is the annotation key for the value of NodeGroupAutoscalingOptions.ScaleDownUtilizationThreshold of cluster-autoscaler
	ScaleDownUtilizationThresholdAnnotation = "autoscaler.gardener.cloud/scale-down-utilization-threshold"
	// ScaleDownGpuUtilizationThresholdAnnotation is the annotation key for the value of NodeGroupAutoscalingOptions.ScaleDownGpuUtilizationThreshold of cluster-autoscaler
	ScaleDownGpuUtilizationThresholdAnnotation = "autoscaler.gardener.cloud/scale-down-gpu-utilization-threshold"
	// ScaleDownUnneededTimeAnnotation is the annotation key for the value of NodeGroupAutoscalingOptions.ScaleDownUnneededTime of cluster-autoscaler
	ScaleDownUnneededTimeAnnotation = "autoscaler.gardener.cloud/scale-down-unneeded-time"
	// ScaleDownUnreadyTimeAnnotation is the annotation key for the value of NodeGroupAutoscalingOptions.ScaleDownUnreadyTime of cluster-autoscaler
	ScaleDownUnreadyTimeAnnotation = "autoscaler.gardener.cloud/scale-down-unready-time"
	// MaxNodeProvisionTimeAnnotation is the annotation key for the value of NodeGroupAutoscalingOptions.MaxNodeProvisionTime of cluster-autoscaler
	MaxNodeProvisionTimeAnnotation = "autoscaler.gardener.cloud/max-node-provision-time"
)
View Source
const BackupBucketResource = "BackupBucket"

BackupBucketResource is a constant for the name of the BackupBucket resource.

View Source
const BackupEntryResource = "BackupEntry"

BackupEntryResource is a constant for the name of the BackupEntry resource.

View Source
const BastionResource = "Bastion"

BastionResource is a constant for the name of the Bastion resource.

View Source
const ClusterResource = "Cluster"

ClusterResource is a constant for the name of the Cluster resource.

View Source
const (
	// ConditionTypeCreated specifies the condition type "Created" used as marker if record creation
	// on infrastructure was performed successfully at least once.
	ConditionTypeCreated = "Created"
)
View Source
const ContainerDRuntimeContainersBinFolder = "/var/bin/containerruntimes"

ContainerDRuntimeContainersBinFolder is the folder where Container Runtime binaries should be saved for ContainerD usage

View Source
const ControlPlaneResource = "ControlPlane"

ControlPlaneResource is a constant for the name of the ControlPlane resource.

View Source
const DNSRecordResource = "DNSRecord"

DNSRecordResource is a constant for the name of the DNSRecord resource.

View Source
const ExtensionResource = "Extension"

ExtensionResource is a constant for the name of the Extension resource.

View Source
const InfrastructureResource = "Infrastructure"

InfrastructureResource is a constant for the name of the Infrastructure resource.

View Source
const NetworkResource = "Network"

NetworkResource is a constant for the name of the Network resource.

View Source
const OperatingSystemConfigResource = "OperatingSystemConfig"

OperatingSystemConfigResource is a constant for the name of the OperatingSystemConfig resource.

View Source
const ShootAlphaCSIMigrationKubernetesVersion = "alpha.csimigration.shoot.extensions.gardener.cloud/kubernetes-version"

ShootAlphaCSIMigrationKubernetesVersion is a constant for an annotation on the Shoot resource stating the Kubernetes version for which the CSI migration shall be enabled. Note that this annotation is alpha and can be removed anytime without further notice. Only use it if you know what you do.

View Source
const WorkerResource = "Worker"

WorkerResource is a constant for the name of the Worker resource.

Variables

View Source
var (
	// SchemeBuilder is a new Scheme Builder which registers our API.
	SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes)
	// AddToScheme is a reference to the Scheme Builder's AddToScheme function.
	AddToScheme = SchemeBuilder.AddToScheme
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: extensions.GroupName, Version: "v1alpha1"}

SchemeGroupVersion is group version used to register these objects

Functions

func Kind

func Kind(kind string) schema.GroupKind

Kind takes an unqualified kind and returns back a Group qualified GroupKind

func Resource

func Resource(resource string) schema.GroupResource

Resource takes an unqualified resource and returns a Group qualified GroupResource

Types

type BackupBucket

type BackupBucket struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the BackupBucket.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec BackupBucketSpec `json:"spec"`
	// +optional
	Status BackupBucketStatus `json:"status"`
}

BackupBucket is a specification for backup bucket.

func (*BackupBucket) DeepCopy

func (in *BackupBucket) DeepCopy() *BackupBucket

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

func (*BackupBucket) DeepCopyInto

func (in *BackupBucket) DeepCopyInto(out *BackupBucket)

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

func (*BackupBucket) DeepCopyObject

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

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

func (*BackupBucket) GetExtensionSpec

func (i *BackupBucket) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*BackupBucket) GetExtensionStatus

func (i *BackupBucket) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type BackupBucketList

type BackupBucketList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of BackupBucket.
	Items []BackupBucket `json:"items"`
}

BackupBucketList is a list of BackupBucket resources.

func (*BackupBucketList) DeepCopy

func (in *BackupBucketList) DeepCopy() *BackupBucketList

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

func (*BackupBucketList) DeepCopyInto

func (in *BackupBucketList) DeepCopyInto(out *BackupBucketList)

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

func (*BackupBucketList) DeepCopyObject

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

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

type BackupBucketSpec

type BackupBucketSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// Region is the region of this bucket. This field is immutable.
	Region string `json:"region"`
	// SecretRef is a reference to a secret that contains the credentials to access object store.
	SecretRef corev1.SecretReference `json:"secretRef"`
}

BackupBucketSpec is the spec for an BackupBucket resource.

func (*BackupBucketSpec) DeepCopy

func (in *BackupBucketSpec) DeepCopy() *BackupBucketSpec

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

func (*BackupBucketSpec) DeepCopyInto

func (in *BackupBucketSpec) DeepCopyInto(out *BackupBucketSpec)

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

type BackupBucketStatus

type BackupBucketStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// GeneratedSecretRef is reference to the secret generated by backup bucket, which
	// will have object store specific credentials.
	// +optional
	GeneratedSecretRef *corev1.SecretReference `json:"generatedSecretRef,omitempty"`
}

BackupBucketStatus is the status for an BackupBucket resource.

func (*BackupBucketStatus) DeepCopy

func (in *BackupBucketStatus) DeepCopy() *BackupBucketStatus

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

func (*BackupBucketStatus) DeepCopyInto

func (in *BackupBucketStatus) DeepCopyInto(out *BackupBucketStatus)

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

type BackupEntry

type BackupEntry struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the BackupEntry.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec BackupEntrySpec `json:"spec"`
	// +optional
	Status BackupEntryStatus `json:"status"`
}

BackupEntry is a specification for backup Entry.

func (*BackupEntry) DeepCopy

func (in *BackupEntry) DeepCopy() *BackupEntry

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

func (*BackupEntry) DeepCopyInto

func (in *BackupEntry) DeepCopyInto(out *BackupEntry)

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

func (*BackupEntry) DeepCopyObject

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

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

func (*BackupEntry) GetExtensionSpec

func (i *BackupEntry) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*BackupEntry) GetExtensionStatus

func (i *BackupEntry) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type BackupEntryList

type BackupEntryList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of BackupEntry.
	Items []BackupEntry `json:"items"`
}

BackupEntryList is a list of BackupEntry resources.

func (*BackupEntryList) DeepCopy

func (in *BackupEntryList) DeepCopy() *BackupEntryList

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

func (*BackupEntryList) DeepCopyInto

func (in *BackupEntryList) DeepCopyInto(out *BackupEntryList)

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

func (*BackupEntryList) DeepCopyObject

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

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

type BackupEntrySpec

type BackupEntrySpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// BackupBucketProviderStatus contains the provider status that has
	// been generated by the controller responsible for the `BackupBucket` resource.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	BackupBucketProviderStatus *runtime.RawExtension `json:"backupBucketProviderStatus,omitempty"`
	// Region is the region of this Entry. This field is immutable.
	Region string `json:"region"`
	// BucketName is the name of backup bucket for this Backup Entry.
	BucketName string `json:"bucketName"`
	// SecretRef is a reference to a secret that contains the credentials to access object store.
	SecretRef corev1.SecretReference `json:"secretRef"`
}

BackupEntrySpec is the spec for an BackupEntry resource.

func (*BackupEntrySpec) DeepCopy

func (in *BackupEntrySpec) DeepCopy() *BackupEntrySpec

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

func (*BackupEntrySpec) DeepCopyInto

func (in *BackupEntrySpec) DeepCopyInto(out *BackupEntrySpec)

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

type BackupEntryStatus

type BackupEntryStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
}

BackupEntryStatus is the status for an BackupEntry resource.

func (*BackupEntryStatus) DeepCopy

func (in *BackupEntryStatus) DeepCopy() *BackupEntryStatus

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

func (*BackupEntryStatus) DeepCopyInto

func (in *BackupEntryStatus) DeepCopyInto(out *BackupEntryStatus)

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

type Bastion added in v1.22.0

type Bastion struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Spec is the specification of this Bastion.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec BastionSpec `json:"spec"`
	// Status is the bastion's status.
	// +optional
	Status BastionStatus `json:"status,omitempty"`
}

Bastion is a bastion or jump host that is dynamically created to provide SSH access to shoot nodes.

func (*Bastion) DeepCopy added in v1.22.0

func (in *Bastion) DeepCopy() *Bastion

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

func (*Bastion) DeepCopyInto added in v1.22.0

func (in *Bastion) DeepCopyInto(out *Bastion)

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

func (*Bastion) DeepCopyObject added in v1.22.0

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

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

func (*Bastion) GetExtensionSpec added in v1.22.0

func (b *Bastion) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Bastion) GetExtensionStatus added in v1.22.0

func (b *Bastion) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type BastionIngressPolicy added in v1.22.0

type BastionIngressPolicy struct {
	// IPBlock defines an IP block that is allowed to access the bastion.
	IPBlock networkingv1.IPBlock `json:"ipBlock"`
}

BastionIngressPolicy represents an ingress policy for SSH bastion hosts.

func (*BastionIngressPolicy) DeepCopy added in v1.22.0

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

func (*BastionIngressPolicy) DeepCopyInto added in v1.22.0

func (in *BastionIngressPolicy) DeepCopyInto(out *BastionIngressPolicy)

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

type BastionList added in v1.22.0

type BastionList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of Bastions.
	Items []Bastion
}

BastionList is a collection of Bastions.

func (*BastionList) DeepCopy added in v1.22.0

func (in *BastionList) DeepCopy() *BastionList

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

func (*BastionList) DeepCopyInto added in v1.22.0

func (in *BastionList) DeepCopyInto(out *BastionList)

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

func (*BastionList) DeepCopyObject added in v1.22.0

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

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

type BastionSpec added in v1.22.0

type BastionSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// UserData is the base64-encoded user data for the bastion instance. This should
	// contain code to provision the SSH key on the bastion instance.
	// This field is immutable.
	UserData []byte `json:"userData"`
	// Ingress controls from where the created bastion host should be reachable.
	Ingress []BastionIngressPolicy `json:"ingress"`
}

BastionSpec contains the specification for an SSH bastion host.

func (*BastionSpec) DeepCopy added in v1.22.0

func (in *BastionSpec) DeepCopy() *BastionSpec

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

func (*BastionSpec) DeepCopyInto added in v1.22.0

func (in *BastionSpec) DeepCopyInto(out *BastionSpec)

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

type BastionStatus added in v1.22.0

type BastionStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// Ingress is the external IP and/or hostname of the bastion host.
	// +optional
	Ingress *corev1.LoadBalancerIngress `json:"ingress,omitempty"`
}

BastionStatus holds the most recently observed status of the Bastion.

func (*BastionStatus) DeepCopy added in v1.22.0

func (in *BastionStatus) DeepCopy() *BastionStatus

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

func (*BastionStatus) DeepCopyInto added in v1.22.0

func (in *BastionStatus) DeepCopyInto(out *BastionStatus)

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

type CRIConfig added in v1.2.0

type CRIConfig struct {
	// Name is a mandatory string containing the name of the CRI library. Supported values are `containerd`.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +kubebuilder:validation:Enum="containerd"
	Name CRIName `json:"name"`
	// ContainerdConfig is the containerd configuration.
	// Only to be set for OperatingSystemConfigs with purpose 'reconcile'.
	// +optional
	Containerd *ContainerdConfig `json:"containerd,omitempty"`
}

CRIConfig contains configurations of the CRI library.

func (*CRIConfig) DeepCopy added in v1.2.0

func (in *CRIConfig) DeepCopy() *CRIConfig

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

func (*CRIConfig) DeepCopyInto added in v1.2.0

func (in *CRIConfig) DeepCopyInto(out *CRIConfig)

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

type CRIName added in v1.2.0

type CRIName string

CRIName is a type alias for the CRI name string.

const (
	// CRINameContainerD is a constant for ContainerD CRI name
	CRINameContainerD CRIName = "containerd"
)

type CloudConfig

type CloudConfig struct {
	// SecretRef is a reference to a secret that contains the actual result of the generated cloud config.
	SecretRef corev1.SecretReference `json:"secretRef"`
}

CloudConfig contains the generated output for the given operating system config spec. It contains a reference to a secret as the result may contain confidential data.

func (*CloudConfig) DeepCopy

func (in *CloudConfig) DeepCopy() *CloudConfig

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

func (*CloudConfig) DeepCopyInto

func (in *CloudConfig) DeepCopyInto(out *CloudConfig)

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

type Cluster

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

	Spec ClusterSpec `json:"spec"`
}

Cluster is a specification for a Cluster resource.

func (*Cluster) DeepCopy

func (in *Cluster) DeepCopy() *Cluster

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

func (*Cluster) DeepCopyInto

func (in *Cluster) DeepCopyInto(out *Cluster)

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

func (*Cluster) DeepCopyObject

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

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

type ClusterAutoscalerOptions added in v1.90.0

type ClusterAutoscalerOptions struct {
	// ScaleDownUtilizationThreshold defines the threshold in fraction (0.0 - 1.0) under which a node is being removed.
	// +optional
	ScaleDownUtilizationThreshold *string `json:"scaleDownUtilizationThreshold,omitempty"`
	// ScaleDownGpuUtilizationThreshold defines the threshold in fraction (0.0 - 1.0) of gpu resources under which a node is being removed.
	// +optional
	ScaleDownGpuUtilizationThreshold *string `json:"scaleDownGpuUtilizationThreshold,omitempty"`
	// ScaleDownUnneededTime defines how long a node should be unneeded before it is eligible for scale down.
	// +optional
	ScaleDownUnneededTime *metav1.Duration `json:"scaleDownUnneededTime,omitempty"`
	// ScaleDownUnreadyTime defines how long an unready node should be unneeded before it is eligible for scale down.
	// +optional
	ScaleDownUnreadyTime *metav1.Duration `json:"scaleDownUnreadyTime,omitempty"`
	// MaxNodeProvisionTime defines how long cluster autoscaler should wait for a node to be provisioned.
	// +optional
	MaxNodeProvisionTime *metav1.Duration `json:"maxNodeProvisionTime,omitempty"`
}

ClusterAutoscalerOptions contains the cluster autoscaler configurations for a worker pool.

func (*ClusterAutoscalerOptions) DeepCopy added in v1.90.0

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

func (*ClusterAutoscalerOptions) DeepCopyInto added in v1.90.0

func (in *ClusterAutoscalerOptions) DeepCopyInto(out *ClusterAutoscalerOptions)

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

type ClusterList

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

	// Items is the list of Cluster.
	Items []Cluster `json:"items"`
}

ClusterList is a list of Cluster resources.

func (*ClusterList) DeepCopy

func (in *ClusterList) DeepCopy() *ClusterList

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

func (*ClusterList) DeepCopyInto

func (in *ClusterList) DeepCopyInto(out *ClusterList)

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

func (*ClusterList) DeepCopyObject

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

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

type ClusterSpec

type ClusterSpec struct {
	// CloudProfile is a raw extension field that contains the cloudprofile resource referenced
	// by the shoot that has to be reconciled.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	CloudProfile runtime.RawExtension `json:"cloudProfile"`
	// Seed is a raw extension field that contains the seed resource referenced by the shoot that
	// has to be reconciled.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	Seed runtime.RawExtension `json:"seed"`
	// Shoot is a raw extension field that contains the shoot resource that has to be reconciled.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	Shoot runtime.RawExtension `json:"shoot"`
}

ClusterSpec is the spec for a Cluster resource.

func (*ClusterSpec) DeepCopy

func (in *ClusterSpec) DeepCopy() *ClusterSpec

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

func (*ClusterSpec) DeepCopyInto

func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)

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

type ContainerRuntime added in v1.2.0

type ContainerRuntime struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the ContainerRuntime.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ContainerRuntimeSpec `json:"spec"`
	// +optional
	Status ContainerRuntimeStatus `json:"status"`
}

ContainerRuntime is a specification for a container runtime resource.

func (*ContainerRuntime) DeepCopy added in v1.2.0

func (in *ContainerRuntime) DeepCopy() *ContainerRuntime

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

func (*ContainerRuntime) DeepCopyInto added in v1.2.0

func (in *ContainerRuntime) DeepCopyInto(out *ContainerRuntime)

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

func (*ContainerRuntime) DeepCopyObject added in v1.2.0

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

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

func (*ContainerRuntime) GetExtensionSpec added in v1.2.0

func (i *ContainerRuntime) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*ContainerRuntime) GetExtensionStatus added in v1.2.0

func (i *ContainerRuntime) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type ContainerRuntimeList added in v1.2.0

type ContainerRuntimeList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

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

ContainerRuntimeList is a list of ContainerRuntime resources.

func (*ContainerRuntimeList) DeepCopy added in v1.2.0

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

func (*ContainerRuntimeList) DeepCopyInto added in v1.2.0

func (in *ContainerRuntimeList) DeepCopyInto(out *ContainerRuntimeList)

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

func (*ContainerRuntimeList) DeepCopyObject added in v1.2.0

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

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

type ContainerRuntimeSpec added in v1.2.0

type ContainerRuntimeSpec struct {
	// BinaryPath is the Worker's machine path where container runtime extensions should copy the binaries to.
	BinaryPath string `json:"binaryPath"`
	// WorkerPool identifies the worker pool of the Shoot.
	// For each worker pool and type, Gardener deploys a ContainerRuntime CRD.
	WorkerPool ContainerRuntimeWorkerPool `json:"workerPool"`
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
}

ContainerRuntimeSpec is the spec for a ContainerRuntime resource.

func (*ContainerRuntimeSpec) DeepCopy added in v1.2.0

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

func (*ContainerRuntimeSpec) DeepCopyInto added in v1.2.0

func (in *ContainerRuntimeSpec) DeepCopyInto(out *ContainerRuntimeSpec)

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

type ContainerRuntimeStatus added in v1.2.0

type ContainerRuntimeStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
}

ContainerRuntimeStatus is the status for a ContainerRuntime resource.

func (*ContainerRuntimeStatus) DeepCopy added in v1.2.0

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

func (*ContainerRuntimeStatus) DeepCopyInto added in v1.2.0

func (in *ContainerRuntimeStatus) DeepCopyInto(out *ContainerRuntimeStatus)

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

type ContainerRuntimeWorkerPool added in v1.3.0

type ContainerRuntimeWorkerPool struct {
	// Name specifies the name of the worker pool the container runtime should be available for.
	// This field is immutable.
	Name string `json:"name"`
	// Selector is the label selector used by the extension to match the nodes belonging to the worker pool.
	Selector metav1.LabelSelector `json:"selector"`
}

ContainerRuntimeWorkerPool identifies a Shoot worker pool by its name and selector.

func (*ContainerRuntimeWorkerPool) DeepCopy added in v1.3.0

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

func (*ContainerRuntimeWorkerPool) DeepCopyInto added in v1.3.0

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

type ContainerdConfig added in v1.100.0

type ContainerdConfig struct {
	// Registries configures the registry hosts for containerd.
	// +optional
	Registries []RegistryConfig `json:"registries,omitempty"`
	// SandboxImage configures the sandbox image for containerd.
	SandboxImage string `json:"sandboxImage"`
}

ContainerdConfig contains configuration options for containerd.

func (*ContainerdConfig) DeepCopy added in v1.100.0

func (in *ContainerdConfig) DeepCopy() *ContainerdConfig

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

func (*ContainerdConfig) DeepCopyInto added in v1.100.0

func (in *ContainerdConfig) DeepCopyInto(out *ContainerdConfig)

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

type ControlPlane

type ControlPlane struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the ControlPlane.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ControlPlaneSpec `json:"spec"`
	// +optional
	Status ControlPlaneStatus `json:"status"`
}

ControlPlane is a specification for a ControlPlane resource.

func (*ControlPlane) DeepCopy

func (in *ControlPlane) DeepCopy() *ControlPlane

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

func (*ControlPlane) DeepCopyInto

func (in *ControlPlane) DeepCopyInto(out *ControlPlane)

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

func (*ControlPlane) DeepCopyObject

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

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

func (*ControlPlane) GetExtensionSpec

func (i *ControlPlane) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*ControlPlane) GetExtensionStatus

func (i *ControlPlane) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type ControlPlaneList

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

	// Items is the list of ControlPlanes.
	Items []ControlPlane `json:"items"`
}

ControlPlaneList is a list of ControlPlane resources.

func (*ControlPlaneList) DeepCopy

func (in *ControlPlaneList) DeepCopy() *ControlPlaneList

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

func (*ControlPlaneList) DeepCopyInto

func (in *ControlPlaneList) DeepCopyInto(out *ControlPlaneList)

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

func (*ControlPlaneList) DeepCopyObject

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

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

type ControlPlaneSpec

type ControlPlaneSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// Purpose contains the data if a cloud provider needs additional components in order to expose the control plane.
	// This field is immutable.
	// +optional
	Purpose *Purpose `json:"purpose,omitempty"`
	// InfrastructureProviderStatus contains the provider status that has
	// been generated by the controller responsible for the `Infrastructure` resource.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	InfrastructureProviderStatus *runtime.RawExtension `json:"infrastructureProviderStatus,omitempty"`
	// Region is the region of this control plane. This field is immutable.
	Region string `json:"region"`
	// SecretRef is a reference to a secret that contains the cloud provider specific credentials.
	SecretRef corev1.SecretReference `json:"secretRef"`
}

ControlPlaneSpec is the spec of a ControlPlane resource.

func (*ControlPlaneSpec) DeepCopy

func (in *ControlPlaneSpec) DeepCopy() *ControlPlaneSpec

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

func (*ControlPlaneSpec) DeepCopyInto

func (in *ControlPlaneSpec) DeepCopyInto(out *ControlPlaneSpec)

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

func (*ControlPlaneSpec) GetExtensionPurpose added in v0.34.0

func (i *ControlPlaneSpec) GetExtensionPurpose() *string

GetExtensionPurpose implements Object.

type ControlPlaneStatus

type ControlPlaneStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
}

ControlPlaneStatus is the status of a ControlPlane resource.

func (*ControlPlaneStatus) DeepCopy

func (in *ControlPlaneStatus) DeepCopy() *ControlPlaneStatus

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

func (*ControlPlaneStatus) DeepCopyInto

func (in *ControlPlaneStatus) DeepCopyInto(out *ControlPlaneStatus)

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

type DNSRecord added in v1.27.0

type DNSRecord struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the DNSRecord.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec DNSRecordSpec `json:"spec"`
	// +optional
	Status DNSRecordStatus `json:"status"`
}

DNSRecord is a specification for a DNSRecord resource.

func (*DNSRecord) DeepCopy added in v1.27.0

func (in *DNSRecord) DeepCopy() *DNSRecord

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

func (*DNSRecord) DeepCopyInto added in v1.27.0

func (in *DNSRecord) DeepCopyInto(out *DNSRecord)

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

func (*DNSRecord) DeepCopyObject added in v1.27.0

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

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

func (*DNSRecord) GetExtensionSpec added in v1.27.0

func (i *DNSRecord) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*DNSRecord) GetExtensionStatus added in v1.27.0

func (i *DNSRecord) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type DNSRecordList added in v1.27.0

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

	// Items is the list of DNSRecords.
	Items []DNSRecord `json:"items"`
}

DNSRecordList is a list of DNSRecord resources.

func (*DNSRecordList) DeepCopy added in v1.27.0

func (in *DNSRecordList) DeepCopy() *DNSRecordList

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

func (*DNSRecordList) DeepCopyInto added in v1.27.0

func (in *DNSRecordList) DeepCopyInto(out *DNSRecordList)

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

func (*DNSRecordList) DeepCopyObject added in v1.27.0

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

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

type DNSRecordSpec added in v1.27.0

type DNSRecordSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// SecretRef is a reference to a secret that contains the cloud provider specific credentials.
	SecretRef corev1.SecretReference `json:"secretRef"`
	// Region is the region of this DNS record. If not specified, the region specified in SecretRef will be used.
	// If that is also not specified, the extension controller will use its default region.
	// +optional
	Region *string `json:"region,omitempty"`
	// Zone is the DNS hosted zone of this DNS record. If not specified, it will be determined automatically by
	// getting all hosted zones of the account and searching for the longest zone name that is a suffix of Name.
	// +optional
	Zone *string `json:"zone,omitempty"`
	// Name is the fully qualified domain name, e.g. "api.<shoot domain>". This field is immutable.
	Name string `json:"name"`
	// RecordType is the DNS record type. Only A, CNAME, and TXT records are currently supported. This field is immutable.
	RecordType DNSRecordType `json:"recordType"`
	// Values is a list of IP addresses for A records, a single hostname for CNAME records, or a list of texts for TXT records.
	Values []string `json:"values"`
	// TTL is the time to live in seconds. Defaults to 120.
	// +optional
	TTL *int64 `json:"ttl,omitempty"`
}

DNSRecordSpec is the spec of a DNSRecord resource.

func (*DNSRecordSpec) DeepCopy added in v1.27.0

func (in *DNSRecordSpec) DeepCopy() *DNSRecordSpec

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

func (*DNSRecordSpec) DeepCopyInto added in v1.27.0

func (in *DNSRecordSpec) DeepCopyInto(out *DNSRecordSpec)

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

type DNSRecordStatus added in v1.27.0

type DNSRecordStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// Zone is the DNS hosted zone of this DNS record.
	// +optional
	Zone *string `json:"zone,omitempty"`
}

DNSRecordStatus is the status of a DNSRecord resource.

func (*DNSRecordStatus) DeepCopy added in v1.27.0

func (in *DNSRecordStatus) DeepCopy() *DNSRecordStatus

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

func (*DNSRecordStatus) DeepCopyInto added in v1.27.0

func (in *DNSRecordStatus) DeepCopyInto(out *DNSRecordStatus)

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

type DNSRecordType added in v1.27.0

type DNSRecordType string

DNSRecordType is a string alias.

const (
	// DNSRecordTypeA specifies that the DNSRecord is of type A.
	DNSRecordTypeA DNSRecordType = "A"
	// DNSRecordTypeAAAA specifies that the DNSRecord is of type AAAA.
	DNSRecordTypeAAAA DNSRecordType = "AAAA"
	// DNSRecordTypeCNAME specifies that the DNSRecord is of type CNAME.
	DNSRecordTypeCNAME DNSRecordType = "CNAME"
	// DNSRecordTypeTXT specifies that the DNSRecord is of type TXT.
	DNSRecordTypeTXT DNSRecordType = "TXT"
)

type DataVolume added in v1.7.0

type DataVolume struct {
	// Name of the volume to make it referencable.
	Name string `json:"name"`
	// Type is the type of the volume.
	// +optional
	Type *string `json:"type,omitempty"`
	// Size is the of the root volume.
	Size string `json:"size"`
	// Encrypted determines if the volume should be encrypted.
	// +optional
	Encrypted *bool `json:"encrypted,omitempty"`
}

DataVolume contains information about a data volume.

func (*DataVolume) DeepCopy added in v1.7.0

func (in *DataVolume) DeepCopy() *DataVolume

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

func (*DataVolume) DeepCopyInto added in v1.7.0

func (in *DataVolume) DeepCopyInto(out *DataVolume)

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

type DefaultSpec

type DefaultSpec struct {
	// Type contains the instance of the resource's kind.
	Type string `json:"type"`
	// Class holds the extension class used to control the responsibility for multiple provider extensions.
	// +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable"
	// +optional
	Class *ExtensionClass `json:"class,omitempty"`
	// ProviderConfig is the provider specific configuration.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	ProviderConfig *runtime.RawExtension `json:"providerConfig,omitempty"`
}

DefaultSpec contains common status fields for every extension resource.

func (*DefaultSpec) DeepCopy

func (in *DefaultSpec) DeepCopy() *DefaultSpec

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

func (*DefaultSpec) DeepCopyInto

func (in *DefaultSpec) DeepCopyInto(out *DefaultSpec)

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

func (*DefaultSpec) GetExtensionClass added in v1.101.0

func (d *DefaultSpec) GetExtensionClass() *ExtensionClass

GetExtensionClass implements Spec.

func (*DefaultSpec) GetExtensionPurpose added in v0.34.0

func (d *DefaultSpec) GetExtensionPurpose() *string

GetExtensionPurpose implements Spec.

func (*DefaultSpec) GetExtensionType

func (d *DefaultSpec) GetExtensionType() string

GetExtensionType implements Spec.

func (*DefaultSpec) GetProviderConfig added in v1.0.0

func (d *DefaultSpec) GetProviderConfig() *runtime.RawExtension

GetProviderConfig implements Spec.

type DefaultStatus

type DefaultStatus struct {
	// ProviderStatus contains provider-specific status.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	ProviderStatus *runtime.RawExtension `json:"providerStatus,omitempty"`
	// Conditions represents the latest available observations of a Seed's current state.
	// +optional
	Conditions []gardencorev1beta1.Condition `json:"conditions,omitempty"`
	// LastError holds information about the last occurred error during an operation.
	// +optional
	LastError *gardencorev1beta1.LastError `json:"lastError,omitempty"`
	// LastOperation holds information about the last operation on the resource.
	// +optional
	LastOperation *gardencorev1beta1.LastOperation `json:"lastOperation,omitempty"`
	// ObservedGeneration is the most recent generation observed for this resource.
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// State can be filled by the operating controller with what ever data it needs.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	State *runtime.RawExtension `json:"state,omitempty"`
	// Resources holds a list of named resource references that can be referred to in the state by their names.
	// +optional
	Resources []gardencorev1beta1.NamedResourceReference `json:"resources,omitempty"`
}

DefaultStatus contains common status fields for every extension resource.

func (*DefaultStatus) DeepCopy

func (in *DefaultStatus) DeepCopy() *DefaultStatus

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

func (*DefaultStatus) DeepCopyInto

func (in *DefaultStatus) DeepCopyInto(out *DefaultStatus)

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

func (*DefaultStatus) GetConditions

func (d *DefaultStatus) GetConditions() []gardencorev1beta1.Condition

GetConditions implements Status.

func (*DefaultStatus) GetLastError

func (d *DefaultStatus) GetLastError() *gardencorev1beta1.LastError

GetLastError implements Status.

func (*DefaultStatus) GetLastOperation

func (d *DefaultStatus) GetLastOperation() *gardencorev1beta1.LastOperation

GetLastOperation implements Status.

func (*DefaultStatus) GetObservedGeneration

func (d *DefaultStatus) GetObservedGeneration() int64

GetObservedGeneration implements Status.

func (*DefaultStatus) GetProviderStatus added in v1.0.0

func (d *DefaultStatus) GetProviderStatus() *runtime.RawExtension

GetProviderStatus implements Status.

func (*DefaultStatus) GetResources added in v1.5.0

GetResources implements Status.

func (*DefaultStatus) GetState added in v0.34.0

func (d *DefaultStatus) GetState() *runtime.RawExtension

GetState implements Status.

func (*DefaultStatus) SetConditions

func (d *DefaultStatus) SetConditions(c []gardencorev1beta1.Condition)

SetConditions implements Status.

func (*DefaultStatus) SetLastError added in v1.21.0

func (d *DefaultStatus) SetLastError(lastErr *gardencorev1beta1.LastError)

SetLastError implements Status.

func (*DefaultStatus) SetLastOperation added in v1.21.0

func (d *DefaultStatus) SetLastOperation(lastOp *gardencorev1beta1.LastOperation)

SetLastOperation implements Status.

func (*DefaultStatus) SetObservedGeneration added in v1.21.0

func (d *DefaultStatus) SetObservedGeneration(generation int64)

SetObservedGeneration implements Status.

func (*DefaultStatus) SetResources added in v1.6.0

func (d *DefaultStatus) SetResources(namedResourceReference []gardencorev1beta1.NamedResourceReference)

SetResources implements Status.

func (*DefaultStatus) SetState added in v1.6.0

func (d *DefaultStatus) SetState(state *runtime.RawExtension)

SetState implements Status.

type DropIn

type DropIn struct {
	// Name is the name of the drop-in.
	Name string `json:"name"`
	// Content is the content of the drop-in.
	Content string `json:"content"`
}

DropIn is a drop-in configuration for a systemd unit.

func (*DropIn) DeepCopy

func (in *DropIn) DeepCopy() *DropIn

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

func (*DropIn) DeepCopyInto

func (in *DropIn) DeepCopyInto(out *DropIn)

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

type Extension

type Extension struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the Extension.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ExtensionSpec `json:"spec"`
	// +optional
	Status ExtensionStatus `json:"status"`
}

Extension is a specification for a Extension resource.

func (*Extension) DeepCopy

func (in *Extension) DeepCopy() *Extension

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

func (*Extension) DeepCopyInto

func (in *Extension) DeepCopyInto(out *Extension)

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

func (*Extension) DeepCopyObject

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

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

func (*Extension) GetExtensionSpec

func (i *Extension) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Extension) GetExtensionStatus

func (i *Extension) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type ExtensionClass added in v1.101.0

type ExtensionClass string

ExtensionClass is a string alias for an extension class.

const (
	// ExtensionClassShoot is the extension class responsible for shoot clusters.
	ExtensionClassShoot ExtensionClass = "shoot"
	// ExtensionClassGarden is the extension class responsible for the garden cluster.
	ExtensionClassGarden ExtensionClass = "garden"
)

type ExtensionList

type ExtensionList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

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

ExtensionList is a list of Extension resources.

func (*ExtensionList) DeepCopy

func (in *ExtensionList) DeepCopy() *ExtensionList

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

func (*ExtensionList) DeepCopyInto

func (in *ExtensionList) DeepCopyInto(out *ExtensionList)

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

func (*ExtensionList) DeepCopyObject

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

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

type ExtensionSpec

type ExtensionSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
}

ExtensionSpec is the spec for a Extension resource.

func (*ExtensionSpec) DeepCopy

func (in *ExtensionSpec) DeepCopy() *ExtensionSpec

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

func (*ExtensionSpec) DeepCopyInto

func (in *ExtensionSpec) DeepCopyInto(out *ExtensionSpec)

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

type ExtensionStatus

type ExtensionStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
}

ExtensionStatus is the status for a Extension resource.

func (*ExtensionStatus) DeepCopy

func (in *ExtensionStatus) DeepCopy() *ExtensionStatus

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

func (*ExtensionStatus) DeepCopyInto

func (in *ExtensionStatus) DeepCopyInto(out *ExtensionStatus)

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

type File

type File struct {
	// Path is the path of the file system where the file should get written to.
	Path string `json:"path"`
	// Permissions describes with which permissions the file should get written to the file system.
	// If no permissions are set, the operating system's defaults are used.
	// +optional
	Permissions *int32 `json:"permissions,omitempty"`
	// Content describe the file's content.
	Content FileContent `json:"content"`
}

File is a file that should get written to the host's file system. The content can either be inlined or referenced from a secret in the same namespace.

func (*File) DeepCopy

func (in *File) DeepCopy() *File

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

func (*File) DeepCopyInto

func (in *File) DeepCopyInto(out *File)

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

type FileCodecID added in v1.35.0

type FileCodecID string

FileCodecID is the id of a FileCodec for cloud-init scripts.

const (
	// PlainFileCodecID is the plain file codec id.
	PlainFileCodecID FileCodecID = ""
	// B64FileCodecID is the base64 file codec id.
	B64FileCodecID FileCodecID = "b64"
)

type FileContent

type FileContent struct {
	// SecretRef is a struct that contains information about the referenced secret.
	// +optional
	SecretRef *FileContentSecretRef `json:"secretRef,omitempty"`
	// Inline is a struct that contains information about the inlined data.
	// +optional
	Inline *FileContentInline `json:"inline,omitempty"`
	// TransmitUnencoded set to true will ensure that the os-extension does not encode the file content when sent to the node.
	// This for example can be used to manipulate the clear-text content before it reaches the node.
	// +optional
	TransmitUnencoded *bool `json:"transmitUnencoded,omitempty"`
	// ImageRef describes a container image which contains a file.
	// +optional
	ImageRef *FileContentImageRef `json:"imageRef,omitempty"`
}

FileContent can either reference a secret or contain inline configuration.

func (*FileContent) DeepCopy

func (in *FileContent) DeepCopy() *FileContent

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

func (*FileContent) DeepCopyInto

func (in *FileContent) DeepCopyInto(out *FileContent)

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

type FileContentImageRef added in v1.83.0

type FileContentImageRef struct {
	// Image contains the container image repository with tag.
	Image string `json:"image"`
	// FilePathInImage contains the path in the image to the file that should be extracted.
	FilePathInImage string `json:"filePathInImage"`
}

FileContentImageRef describes a container image which contains a file

func (*FileContentImageRef) DeepCopy added in v1.83.0

func (in *FileContentImageRef) DeepCopy() *FileContentImageRef

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

func (*FileContentImageRef) DeepCopyInto added in v1.83.0

func (in *FileContentImageRef) DeepCopyInto(out *FileContentImageRef)

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

type FileContentInline

type FileContentInline struct {
	// Encoding is the file's encoding (e.g. base64).
	Encoding string `json:"encoding"`
	// Data is the file's data.
	Data string `json:"data"`
}

FileContentInline contains keys for inlining a file content's data and encoding.

func (*FileContentInline) DeepCopy

func (in *FileContentInline) DeepCopy() *FileContentInline

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

func (*FileContentInline) DeepCopyInto

func (in *FileContentInline) DeepCopyInto(out *FileContentInline)

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

type FileContentSecretRef

type FileContentSecretRef struct {
	// Name is the name of the secret.
	Name string `json:"name"`
	// DataKey is the key in the secret's `.data` field that should be read.
	DataKey string `json:"dataKey"`
}

FileContentSecretRef contains keys for referencing a file content's data from a secret in the same namespace.

func (*FileContentSecretRef) DeepCopy

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

func (*FileContentSecretRef) DeepCopyInto

func (in *FileContentSecretRef) DeepCopyInto(out *FileContentSecretRef)

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

type IPFamily added in v1.63.0

type IPFamily string

IPFamily is a type for specifying an IP protocol version to use in Gardener clusters.

const (
	// IPFamilyIPv4 is the IPv4 IP family.
	IPFamilyIPv4 IPFamily = "IPv4"
	// IPFamilyIPv6 is the IPv6 IP family.
	IPFamilyIPv6 IPFamily = "IPv6"
)

type Infrastructure

type Infrastructure struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the Infrastructure.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec InfrastructureSpec `json:"spec"`
	// +optional
	Status InfrastructureStatus `json:"status"`
}

Infrastructure is a specification for cloud provider infrastructure.

func (*Infrastructure) DeepCopy

func (in *Infrastructure) DeepCopy() *Infrastructure

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

func (*Infrastructure) DeepCopyInto

func (in *Infrastructure) DeepCopyInto(out *Infrastructure)

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

func (*Infrastructure) DeepCopyObject

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

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

func (*Infrastructure) GetExtensionSpec

func (i *Infrastructure) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Infrastructure) GetExtensionStatus

func (i *Infrastructure) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type InfrastructureList

type InfrastructureList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of Infrastructures.
	Items []Infrastructure `json:"items"`
}

InfrastructureList is a list of Infrastructure resources.

func (*InfrastructureList) DeepCopy

func (in *InfrastructureList) DeepCopy() *InfrastructureList

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

func (*InfrastructureList) DeepCopyInto

func (in *InfrastructureList) DeepCopyInto(out *InfrastructureList)

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

func (*InfrastructureList) DeepCopyObject

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

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

type InfrastructureSpec

type InfrastructureSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// Region is the region of this infrastructure. This field is immutable.
	Region string `json:"region"`
	// SecretRef is a reference to a secret that contains the cloud provider credentials.
	SecretRef corev1.SecretReference `json:"secretRef"`
	// SSHPublicKey is the public SSH key that should be used with this infrastructure.
	// +optional
	SSHPublicKey []byte `json:"sshPublicKey,omitempty"`
}

InfrastructureSpec is the spec for an Infrastructure resource.

func (*InfrastructureSpec) DeepCopy

func (in *InfrastructureSpec) DeepCopy() *InfrastructureSpec

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

func (*InfrastructureSpec) DeepCopyInto

func (in *InfrastructureSpec) DeepCopyInto(out *InfrastructureSpec)

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

type InfrastructureStatus

type InfrastructureStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// NodesCIDR is the CIDR of the node network that was optionally created by the acting extension controller.
	// This might be needed in environments in which the CIDR for the network for the shoot worker node cannot
	// be statically defined in the Shoot resource but must be computed dynamically.
	// +optional
	NodesCIDR *string `json:"nodesCIDR,omitempty"`
	// EgressCIDRs is a list of CIDRs used by the shoot as the source IP for egress traffic. For certain environments the egress
	// IPs may not be stable in which case the extension controller may opt to not populate this field.
	// +optional
	EgressCIDRs []string `json:"egressCIDRs,omitempty"`
	// Networking contains information about cluster networking such as CIDRs.
	// +optional
	Networking *InfrastructureStatusNetworking `json:"networking,omitempty"`
}

InfrastructureStatus is the status for an Infrastructure resource.

func (*InfrastructureStatus) DeepCopy

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

func (*InfrastructureStatus) DeepCopyInto

func (in *InfrastructureStatus) DeepCopyInto(out *InfrastructureStatus)

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

type InfrastructureStatusNetworking added in v1.99.0

type InfrastructureStatusNetworking struct {
	// Pods are the CIDRs of the pod network.
	// +optional
	Pods []string `json:"pods,omitempty"`
	// Nodes are the CIDRs of the node network.
	// +optional
	Nodes []string `json:"nodes,omitempty"`
	// Services are the CIDRs of the service network.
	// +optional
	Services []string `json:"services,omitempty"`
}

InfrastructureStatusNetworking is a structure containing information about the node, service and pod network ranges.

func (*InfrastructureStatusNetworking) DeepCopy added in v1.99.0

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

func (*InfrastructureStatusNetworking) DeepCopyInto added in v1.99.0

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

type MachineDeployment

type MachineDeployment struct {
	// Name is the name of the `MachineDeployment` resource.
	Name string `json:"name"`
	// Minimum is the minimum number for this machine deployment.
	Minimum int32 `json:"minimum"`
	// Maximum is the maximum number for this machine deployment.
	Maximum int32 `json:"maximum"`
}

MachineDeployment is a created machine deployment.

func (*MachineDeployment) DeepCopy

func (in *MachineDeployment) DeepCopy() *MachineDeployment

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

func (*MachineDeployment) DeepCopyInto

func (in *MachineDeployment) DeepCopyInto(out *MachineDeployment)

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

type MachineImage

type MachineImage struct {
	// Name is the logical name of the machine image.
	Name string `json:"name"`
	// Version is the version of the machine image.
	Version string `json:"version"`
}

MachineImage contains logical information about the name and the version of the machie image that should be used. The logical information must be mapped to the provider-specific information (e.g., AMIs, ...) by the provider itself.

func (*MachineImage) DeepCopy

func (in *MachineImage) DeepCopy() *MachineImage

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

func (*MachineImage) DeepCopyInto

func (in *MachineImage) DeepCopyInto(out *MachineImage)

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

type Network

type Network struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the Network.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec NetworkSpec `json:"spec"`
	// +optional
	Status NetworkStatus `json:"status"`
}

Network is the specification for cluster networking.

func (*Network) DeepCopy

func (in *Network) DeepCopy() *Network

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

func (*Network) DeepCopyInto

func (in *Network) DeepCopyInto(out *Network)

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

func (*Network) DeepCopyObject

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

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

func (*Network) GetExtensionSpec

func (n *Network) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Network) GetExtensionStatus

func (n *Network) GetExtensionStatus() Status

GetExtensionStatus implements Object.

func (*Network) GetExtensionType

func (n *Network) GetExtensionType() string

GetExtensionType returns the type of this Network resource.

type NetworkList

type NetworkList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of Networks.
	Items []Network `json:"items"`
}

NetworkList is a list of Network resources.

func (*NetworkList) DeepCopy

func (in *NetworkList) DeepCopy() *NetworkList

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

func (*NetworkList) DeepCopyInto

func (in *NetworkList) DeepCopyInto(out *NetworkList)

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

func (*NetworkList) DeepCopyObject

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

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

type NetworkSpec

type NetworkSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// PodCIDR defines the CIDR that will be used for pods. This field is immutable.
	PodCIDR string `json:"podCIDR"`
	// ServiceCIDR defines the CIDR that will be used for services. This field is immutable.
	ServiceCIDR string `json:"serviceCIDR"`
	// IPFamilies specifies the IP protocol versions to use for shoot networking. This field is immutable.
	// See https://github.com/gardener/gardener/blob/master/docs/usage/ipv6.md
	// +optional
	IPFamilies []IPFamily `json:"ipFamilies,omitempty"`
}

NetworkSpec is the spec for an Network resource.

func (*NetworkSpec) DeepCopy

func (in *NetworkSpec) DeepCopy() *NetworkSpec

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

func (*NetworkSpec) DeepCopyInto

func (in *NetworkSpec) DeepCopyInto(out *NetworkSpec)

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

type NetworkStatus

type NetworkStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
}

NetworkStatus is the status for an Network resource.

func (*NetworkStatus) DeepCopy

func (in *NetworkStatus) DeepCopy() *NetworkStatus

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

func (*NetworkStatus) DeepCopyInto

func (in *NetworkStatus) DeepCopyInto(out *NetworkStatus)

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

type NodeTemplate added in v1.38.0

type NodeTemplate struct {
	// Capacity represents the expected Node capacity.
	Capacity corev1.ResourceList `json:"capacity"`
}

NodeTemplate contains information about the expected node properties.

func (*NodeTemplate) DeepCopy added in v1.38.0

func (in *NodeTemplate) DeepCopy() *NodeTemplate

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

func (*NodeTemplate) DeepCopyInto added in v1.38.0

func (in *NodeTemplate) DeepCopyInto(out *NodeTemplate)

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

type Object

type Object interface {
	metav1.Object
	runtime.Object

	// GetExtensionSpec retrieves the object's spec.
	GetExtensionSpec() Spec
	// GetExtensionStatus retrieves the object's status.
	GetExtensionStatus() Status
}

Object is an extension object resource.

type OperatingSystemConfig

type OperatingSystemConfig struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the OperatingSystemConfig.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec OperatingSystemConfigSpec `json:"spec"`
	// +optional
	Status OperatingSystemConfigStatus `json:"status"`
}

OperatingSystemConfig is a specification for a OperatingSystemConfig resource

func (*OperatingSystemConfig) DeepCopy

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

func (*OperatingSystemConfig) DeepCopyInto

func (in *OperatingSystemConfig) DeepCopyInto(out *OperatingSystemConfig)

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

func (*OperatingSystemConfig) DeepCopyObject

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

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

func (*OperatingSystemConfig) GetExtensionSpec

func (o *OperatingSystemConfig) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*OperatingSystemConfig) GetExtensionStatus

func (o *OperatingSystemConfig) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type OperatingSystemConfigList

type OperatingSystemConfigList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of OperatingSystemConfigs.
	Items []OperatingSystemConfig `json:"items"`
}

OperatingSystemConfigList is a list of OperatingSystemConfig resources.

func (*OperatingSystemConfigList) DeepCopy

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

func (*OperatingSystemConfigList) DeepCopyInto

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

func (*OperatingSystemConfigList) DeepCopyObject

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

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

type OperatingSystemConfigPurpose

type OperatingSystemConfigPurpose string

OperatingSystemConfigPurpose is a string alias.

const (
	// OperatingSystemConfigPurposeProvision describes that the operating system configuration is used to bootstrap a
	// new VM.
	OperatingSystemConfigPurposeProvision OperatingSystemConfigPurpose = "provision"
	// OperatingSystemConfigPurposeReconcile describes that the operating system configuration is executed on an already
	// provisioned VM by the gardener-node-agent.
	OperatingSystemConfigPurposeReconcile OperatingSystemConfigPurpose = "reconcile"

	// OperatingSystemConfigSecretDataKey is a constant for the key in a secret's `.data` field containing the
	// results of a computed cloud config.
	OperatingSystemConfigSecretDataKey = "cloud_config" // #nosec G101 -- No credential.
)

type OperatingSystemConfigSpec

type OperatingSystemConfigSpec struct {
	// CRI config is a structure contains configurations of the CRI library
	// +optional
	CRIConfig *CRIConfig `json:"criConfig,omitempty"`
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`
	// Purpose describes how the result of this OperatingSystemConfig is used by Gardener. Either it
	// gets sent to the `Worker` extension controller to bootstrap a VM, or it is downloaded by the
	// gardener-node-agent already running on a bootstrapped VM.
	// This field is immutable.
	Purpose OperatingSystemConfigPurpose `json:"purpose"`
	// Units is a list of unit for the operating system configuration (usually, a systemd unit).
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +optional
	Units []Unit `json:"units,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
	// Files is a list of files that should get written to the host's file system.
	// +patchMergeKey=path
	// +patchStrategy=merge
	// +optional
	Files []File `json:"files,omitempty" patchStrategy:"merge" patchMergeKey:"path"`
}

OperatingSystemConfigSpec is the spec for a OperatingSystemConfig resource.

func (*OperatingSystemConfigSpec) DeepCopy

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

func (*OperatingSystemConfigSpec) DeepCopyInto

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

func (*OperatingSystemConfigSpec) GetExtensionPurpose added in v0.34.0

func (o *OperatingSystemConfigSpec) GetExtensionPurpose() *string

GetExtensionPurpose implements Object.

type OperatingSystemConfigStatus

type OperatingSystemConfigStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// ExtensionUnits is a list of additional systemd units provided by the extension.
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +optional
	ExtensionUnits []Unit `json:"extensionUnits,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
	// ExtensionFiles is a list of additional files provided by the extension.
	// +patchMergeKey=path
	// +patchStrategy=merge
	// +optional
	ExtensionFiles []File `json:"extensionFiles,omitempty" patchStrategy:"merge" patchMergeKey:"path"`
	// CloudConfig is a structure for containing the generated output for the given operating system
	// config spec. It contains a reference to a secret as the result may contain confidential data.
	// +optional
	CloudConfig *CloudConfig `json:"cloudConfig,omitempty"`
}

OperatingSystemConfigStatus is the status for a OperatingSystemConfig resource.

func (*OperatingSystemConfigStatus) DeepCopy

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

func (*OperatingSystemConfigStatus) DeepCopyInto

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

type Purpose

type Purpose string

Purpose is a string alias.

const (
	// Normal triggers the ControlPlane controllers for the shoot provider.
	Normal Purpose = "normal"
	// Exposure triggers the ControlPlane controllers for the exposure settings.
	Exposure Purpose = "exposure"
)

type RegistryCapability added in v1.100.0

type RegistryCapability string

RegistryCapability specifies an action a client can perform against a registry.

const (
	// PullCapability defines the 'pull' capability.
	PullCapability RegistryCapability = "pull"
	// ResolveCapability defines the 'resolve' capability.
	ResolveCapability RegistryCapability = "resolve"
	// PushCapability defines the 'push' capability.
	PushCapability RegistryCapability = "push"
)

type RegistryConfig added in v1.100.0

type RegistryConfig struct {
	// Upstream is the upstream name of the registry.
	Upstream string `json:"upstream"`
	// Server is the URL to registry server of this upstream.
	// It corresponds to the server field in the `hosts.toml` file, see https://github.com/containerd/containerd/blob/c51463010e0682f76dfdc10edc095e6596e2764b/docs/hosts.md#server-field for more information.
	// +optional
	Server *string `json:"server,omitempty"`
	// Hosts are the registry hosts.
	// It corresponds to the host fields in the `hosts.toml` file, see https://github.com/containerd/containerd/blob/c51463010e0682f76dfdc10edc095e6596e2764b/docs/hosts.md#host-fields-in-the-toml-table-format for more information.
	Hosts []RegistryHost `json:"hosts,omitempty"`
	// ReadinessProbe determines if host registry endpoints should be probed before they are added to the containerd config.
	// +optional
	ReadinessProbe *bool `json:"readinessProbe,omitempty"`
}

RegistryConfig contains registry configuration options.

func (*RegistryConfig) DeepCopy added in v1.100.0

func (in *RegistryConfig) DeepCopy() *RegistryConfig

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

func (*RegistryConfig) DeepCopyInto added in v1.100.0

func (in *RegistryConfig) DeepCopyInto(out *RegistryConfig)

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

type RegistryHost added in v1.100.0

type RegistryHost struct {
	// URL is the endpoint address of the registry mirror.
	URL string `json:"url"`
	// Capabilities determine what operations a host is
	// capable of performing. Defaults to
	//  - pull
	//  - resolve
	Capabilities []RegistryCapability `json:"capabilities,omitempty"`
	// CACerts are paths to public key certificates used for TLS.
	CACerts []string `json:"caCerts,omitempty"`
}

RegistryHost contains configuration values for a registry host.

func (*RegistryHost) DeepCopy added in v1.100.0

func (in *RegistryHost) DeepCopy() *RegistryHost

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

func (*RegistryHost) DeepCopyInto added in v1.100.0

func (in *RegistryHost) DeepCopyInto(out *RegistryHost)

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

type Spec

type Spec interface {
	// GetExtensionType retrieves the extension type.
	GetExtensionType() string
	// GetExtensionClass retrieves the extension class.
	GetExtensionClass() *ExtensionClass
	// GetExtensionPurpose retrieves the extension purpose.
	GetExtensionPurpose() *string
	// GetProviderConfig retrieves the provider config.
	GetProviderConfig() *runtime.RawExtension
}

Spec is the spec section of an Object.

type Status

type Status interface {
	// GetProviderStatus retrieves the provider status.
	GetProviderStatus() *runtime.RawExtension
	// GetConditions retrieves the Conditions of a status.
	// Conditions may be nil.
	GetConditions() []gardencorev1beta1.Condition
	// SetConditions sets the Conditions of a status.
	SetConditions([]gardencorev1beta1.Condition)
	// GetLastOperation retrieves the LastOperation of a status.
	// LastOperation may be nil.
	GetLastOperation() *gardencorev1beta1.LastOperation
	// SetLastOperation sets the LastOperation of a status.
	SetLastOperation(*gardencorev1beta1.LastOperation)
	// GetObservedGeneration retrieves the last generation observed by the extension controller.
	GetObservedGeneration() int64
	// SetObservedGeneration sets the ObservedGeneration of a status.
	SetObservedGeneration(int64)
	// GetLastError retrieves the LastError of a status.
	// LastError may be nil.
	GetLastError() *gardencorev1beta1.LastError
	// SetLastError sets the LastError of a status.
	SetLastError(*gardencorev1beta1.LastError)
	// GetState retrieves the State of the extension
	GetState() *runtime.RawExtension
	// SetState sets the State of the extension
	SetState(state *runtime.RawExtension)
	// GetResources retrieves the list of named resource references referred to in the State by their names.
	GetResources() []gardencorev1beta1.NamedResourceReference
	// SetResources sets a list of named resource references in the Status, that are referred by
	// their names in the State.
	SetResources(namedResourceReferences []gardencorev1beta1.NamedResourceReference)
}

Status is the status of an Object.

type Unit

type Unit struct {
	// Name is the name of a unit.
	Name string `json:"name"`
	// Command is the unit's command.
	// +optional
	Command *UnitCommand `json:"command,omitempty"`
	// Enable describes whether the unit is enabled or not.
	// +optional
	Enable *bool `json:"enable,omitempty"`
	// Content is the unit's content.
	// +optional
	Content *string `json:"content,omitempty"`
	// DropIns is a list of drop-ins for this unit.
	// +patchMergeKey=name
	// +patchStrategy=merge
	// +optional
	DropIns []DropIn `json:"dropIns,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
	// FilePaths is a list of files the unit depends on. If any file changes a restart of the dependent unit will be
	// triggered. For each FilePath there must exist a File with matching Path in OperatingSystemConfig.Spec.Files.
	FilePaths []string `json:"filePaths,omitempty"`
}

Unit is a unit for the operating system configuration (usually, a systemd unit).

func (*Unit) DeepCopy

func (in *Unit) DeepCopy() *Unit

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

func (*Unit) DeepCopyInto

func (in *Unit) DeepCopyInto(out *Unit)

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

type UnitCommand added in v1.83.0

type UnitCommand string

UnitCommand is a string alias.

const (
	// CommandStart is the 'start' command for a unit.
	CommandStart UnitCommand = "start"
	// CommandRestart is the 'restart' command for a unit.
	CommandRestart UnitCommand = "restart"
	// CommandStop is the 'stop' command for a unit.
	CommandStop UnitCommand = "stop"
)

type Volume

type Volume struct {
	// Name of the volume to make it referencable.
	// +optional
	Name *string `json:"name,omitempty"`
	// Type is the type of the volume.
	// +optional
	Type *string `json:"type,omitempty"`
	// Size is the of the root volume.
	Size string `json:"size"`
	// Encrypted determines if the volume should be encrypted.
	// +optional
	Encrypted *bool `json:"encrypted,omitempty"`
}

Volume contains information about the root disks that should be used for worker pools.

func (*Volume) DeepCopy

func (in *Volume) DeepCopy() *Volume

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

func (*Volume) DeepCopyInto

func (in *Volume) DeepCopyInto(out *Volume)

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

type Worker

type Worker struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ObjectMeta `json:"metadata,omitempty"`
	// Specification of the Worker.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec WorkerSpec `json:"spec"`
	// +optional
	Status WorkerStatus `json:"status"`
}

Worker is a specification for a Worker resource.

func (*Worker) DeepCopy

func (in *Worker) DeepCopy() *Worker

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

func (*Worker) DeepCopyInto

func (in *Worker) DeepCopyInto(out *Worker)

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

func (*Worker) DeepCopyObject

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

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

func (*Worker) GetExtensionSpec

func (i *Worker) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Worker) GetExtensionStatus

func (i *Worker) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type WorkerList

type WorkerList struct {
	metav1.TypeMeta `json:",inline"`
	// +optional
	metav1.ListMeta `json:"metadata,omitempty"`

	// Items is the list of Worker.
	Items []Worker `json:"items"`
}

WorkerList is a list of Worker resources.

func (*WorkerList) DeepCopy

func (in *WorkerList) DeepCopy() *WorkerList

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

func (*WorkerList) DeepCopyInto

func (in *WorkerList) DeepCopyInto(out *WorkerList)

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

func (*WorkerList) DeepCopyObject

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

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

type WorkerPool

type WorkerPool struct {
	// MachineType contains information about the machine type that should be used for this worker pool.
	MachineType string `json:"machineType"`
	// Maximum is the maximum size of the worker pool.
	Maximum int32 `json:"maximum"`
	// MaxSurge is maximum number of VMs that are created during an update.
	MaxSurge intstr.IntOrString `json:"maxSurge"`
	// MaxUnavailable is the maximum number of VMs that can be unavailable during an update.
	MaxUnavailable intstr.IntOrString `json:"maxUnavailable"`
	// Annotations is a map of key/value pairs for annotations for all the `Node` objects in this worker pool.
	// +optional
	Annotations map[string]string `json:"annotations,omitempty"`
	// Labels is a map of key/value pairs for labels for all the `Node` objects in this worker pool.
	// +optional
	Labels map[string]string `json:"labels,omitempty"`
	// Taints is a list of taints for all the `Node` objects in this worker pool.
	// +optional
	Taints []corev1.Taint `json:"taints,omitempty"`
	// MachineImage contains logical information about the name and the version of the machie image that
	// should be used. The logical information must be mapped to the provider-specific information (e.g.,
	// AMIs, ...) by the provider itself.
	MachineImage MachineImage `json:"machineImage,omitempty"`
	// Minimum is the minimum size of the worker pool.
	Minimum int32 `json:"minimum"`
	// Name is the name of this worker pool.
	Name string `json:"name"`
	// NodeAgentSecretName is uniquely identifying selected aspects of the OperatingSystemConfig. If it changes, then the
	// worker pool must be rolled.
	// +optional
	NodeAgentSecretName *string `json:"nodeAgentSecretName,omitempty"`
	// ProviderConfig is a provider specific configuration for the worker pool.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	ProviderConfig *runtime.RawExtension `json:"providerConfig,omitempty"`
	// UserData is a base64-encoded string that contains the data that is sent to the provider's APIs
	// when a new machine/VM that is part of this worker pool shall be spawned.
	// Either this or UserDataSecretRef must be provided.
	// Deprecated: This field will be removed in future release.
	// TODO(rfranzke): Remove this field after v1.104 has been released.
	// +optional
	UserData []byte `json:"userData,omitempty"`
	// UserDataSecretRef references a Secret and a data key containing the data that is sent to the provider's APIs when
	// a new machine/VM that is part of this worker pool shall be spawned.
	// Either this or UserData must be provided.
	// +optional
	UserDataSecretRef *corev1.SecretKeySelector `json:"userDataSecretRef,omitempty"`
	// Volume contains information about the root disks that should be used for this worker pool.
	// +optional
	Volume *Volume `json:"volume,omitempty"`
	// DataVolumes contains a list of additional worker volumes.
	// +optional
	DataVolumes []DataVolume `json:"dataVolumes,omitempty"`
	// KubeletDataVolumeName contains the name of a dataVolume that should be used for storing kubelet state.
	// +optional
	KubeletDataVolumeName *string `json:"kubeletDataVolumeName,omitempty"`
	// Zones contains information about availability zones for this worker pool.
	// +optional
	Zones []string `json:"zones,omitempty"`
	// MachineControllerManagerSettings contains configurations for different worker-pools. Eg. MachineDrainTimeout, MachineHealthTimeout.
	// +optional
	MachineControllerManagerSettings *gardencorev1beta1.MachineControllerManagerSettings `json:"machineControllerManager,omitempty"`
	// KubernetesVersion is the kubernetes version in this worker pool
	// +optional
	KubernetesVersion *string `json:"kubernetesVersion,omitempty"`
	// NodeTemplate contains resource information of the machine which is used by Cluster Autoscaler to generate nodeTemplate during scaling a nodeGroup from zero
	// +optional
	NodeTemplate *NodeTemplate `json:"nodeTemplate,omitempty"`
	// Architecture is the CPU architecture of the worker pool machines and machine image.
	// +optional
	Architecture *string `json:"architecture,omitempty"`
	// ClusterAutoscaler contains the cluster autoscaler configurations for the worker pool.
	// +optional
	ClusterAutoscaler *ClusterAutoscalerOptions `json:"clusterAutoscaler,omitempty"`
}

WorkerPool is the definition of a specific worker pool.

func (*WorkerPool) DeepCopy

func (in *WorkerPool) DeepCopy() *WorkerPool

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

func (*WorkerPool) DeepCopyInto

func (in *WorkerPool) DeepCopyInto(out *WorkerPool)

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

type WorkerSpec

type WorkerSpec struct {
	// DefaultSpec is a structure containing common fields used by all extension resources.
	DefaultSpec `json:",inline"`

	// InfrastructureProviderStatus is a raw extension field that contains the provider status that has
	// been generated by the controller responsible for the `Infrastructure` resource.
	// +kubebuilder:validation:XPreserveUnknownFields
	// +kubebuilder:pruning:PreserveUnknownFields
	// +optional
	InfrastructureProviderStatus *runtime.RawExtension `json:"infrastructureProviderStatus,omitempty"`
	// Region is the name of the region where the worker pool should be deployed to. This field is immutable.
	Region string `json:"region"`
	// SecretRef is a reference to a secret that contains the cloud provider specific credentials.
	SecretRef corev1.SecretReference `json:"secretRef"`
	// SSHPublicKey is the public SSH key that should be used with these workers.
	// +optional
	SSHPublicKey []byte `json:"sshPublicKey,omitempty"`
	// Pools is a list of worker pools.
	// +patchMergeKey=name
	// +patchStrategy=merge
	Pools []WorkerPool `json:"pools" patchStrategy:"merge" patchMergeKey:"name"`
}

WorkerSpec is the spec for a Worker resource.

func (*WorkerSpec) DeepCopy

func (in *WorkerSpec) DeepCopy() *WorkerSpec

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

func (*WorkerSpec) DeepCopyInto

func (in *WorkerSpec) DeepCopyInto(out *WorkerSpec)

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

type WorkerStatus

type WorkerStatus struct {
	// DefaultStatus is a structure containing common fields used by all extension resources.
	DefaultStatus `json:",inline"`
	// MachineDeployments is a list of created machine deployments. It will be used to e.g. configure
	// the cluster-autoscaler properly.
	// +patchMergeKey=name
	// +patchStrategy=merge
	MachineDeployments []MachineDeployment `json:"machineDeployments,omitempty" patchStrategy:"merge" patchMergeKey:"name"`
	// MachineDeploymentsLastUpdateTime is the timestamp when the status.MachineDeployments slice was last updated.
	// +optional
	MachineDeploymentsLastUpdateTime *metav1.Time `json:"machineDeploymentsLastUpdateTime,omitempty"`
}

WorkerStatus is the status for a Worker resource.

func (*WorkerStatus) DeepCopy

func (in *WorkerStatus) DeepCopy() *WorkerStatus

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

func (*WorkerStatus) DeepCopyInto

func (in *WorkerStatus) DeepCopyInto(out *WorkerStatus)

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

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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