v1alpha1

package
v0.41.0 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2025 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

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

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

func (in *Bastion) DeepCopy() *Bastion

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

func (*Bastion) DeepCopyInto

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

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

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

func (*Bastion) GetExtensionSpec

func (b *Bastion) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*Bastion) GetExtensionStatus

func (b *Bastion) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type BastionIngressPolicy

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

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

func (*BastionIngressPolicy) DeepCopyInto

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

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

func (in *BastionList) DeepCopy() *BastionList

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

func (*BastionList) DeepCopyInto

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

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

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

type BastionSpec

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

func (in *BastionSpec) DeepCopy() *BastionSpec

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

func (*BastionSpec) DeepCopyInto

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

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

func (in *BastionStatus) DeepCopy() *BastionStatus

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

func (*BastionStatus) DeepCopyInto

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

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"`
	// CgroupDriver configures the CRI's cgroup driver. Supported values are `cgroupfs` or `systemd`.
	// +optional
	CgroupDriver *CgroupDriverName `json:"cgroupDriver,omitempty"`
	// 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

func (in *CRIConfig) DeepCopy() *CRIConfig

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

func (*CRIConfig) DeepCopyInto

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

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 CgroupDriverName

type CgroupDriverName string

CgroupDriverName is a string denoting the CRI cgroup driver.

const (
	// CgroupDriverCgroupfs is the name of the 'cgroupfs' cgroup driver.
	CgroupDriverCgroupfs CgroupDriverName = "cgroupfs"
	// CgroupDriverSystemd is the name of the 'systemd' cgroup driver.
	CgroupDriverSystemd CgroupDriverName = "systemd"
)

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

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

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

func (*ClusterAutoscalerOptions) DeepCopyInto

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

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

func (in *ContainerRuntime) DeepCopy() *ContainerRuntime

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

func (*ContainerRuntime) DeepCopyInto

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

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

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

func (*ContainerRuntime) GetExtensionSpec

func (i *ContainerRuntime) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*ContainerRuntime) GetExtensionStatus

func (i *ContainerRuntime) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type ContainerRuntimeList

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

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

func (*ContainerRuntimeList) DeepCopyInto

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

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

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

type ContainerRuntimeSpec

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

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

func (*ContainerRuntimeSpec) DeepCopyInto

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

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

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

func (*ContainerRuntimeStatus) DeepCopyInto

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

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

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

func (*ContainerRuntimeWorkerPool) DeepCopyInto

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

type ContainerdConfig

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"`
	// Plugins configures the plugins section in containerd's config.toml.
	// +optional
	Plugins []PluginConfig `json:"plugins,omitempty"`
}

ContainerdConfig contains configuration options for containerd.

func (*ContainerdConfig) DeepCopy

func (in *ContainerdConfig) DeepCopy() *ContainerdConfig

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

func (*ContainerdConfig) DeepCopyInto

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

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

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

func (in *DNSRecord) DeepCopy() *DNSRecord

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

func (*DNSRecord) DeepCopyInto

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

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

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

func (*DNSRecord) GetExtensionSpec

func (i *DNSRecord) GetExtensionSpec() Spec

GetExtensionSpec implements Object.

func (*DNSRecord) GetExtensionStatus

func (i *DNSRecord) GetExtensionStatus() Status

GetExtensionStatus implements Object.

type DNSRecordList

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

func (in *DNSRecordList) DeepCopy() *DNSRecordList

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

func (*DNSRecordList) DeepCopyInto

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

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

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

type DNSRecordSpec

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

func (in *DNSRecordSpec) DeepCopy() *DNSRecordSpec

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

func (*DNSRecordSpec) DeepCopyInto

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

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

func (in *DNSRecordStatus) DeepCopy() *DNSRecordStatus

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

func (*DNSRecordStatus) DeepCopyInto

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

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

type DataVolume struct {
	// Name of the volume to make it referenceable.
	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

func (in *DataVolume) DeepCopy() *DataVolume

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

func (*DataVolume) DeepCopyInto

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

func (d *DefaultSpec) GetExtensionClass() *ExtensionClass

GetExtensionClass implements Spec.

func (*DefaultSpec) GetExtensionPurpose

func (d *DefaultSpec) GetExtensionPurpose() *string

GetExtensionPurpose implements Spec.

func (*DefaultSpec) GetExtensionType

func (d *DefaultSpec) GetExtensionType() string

GetExtensionType implements Spec.

func (*DefaultSpec) GetProviderConfig

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

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

GetProviderStatus implements Status.

func (*DefaultStatus) GetResources

GetResources implements Status.

func (*DefaultStatus) GetState

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

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

SetLastError implements Status.

func (*DefaultStatus) SetLastOperation

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

SetLastOperation implements Status.

func (*DefaultStatus) SetObservedGeneration

func (d *DefaultStatus) SetObservedGeneration(generation int64)

SetObservedGeneration implements Status.

func (*DefaultStatus) SetResources

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

SetResources implements Status.

func (*DefaultStatus) SetState

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

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 *uint32 `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

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

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

func (in *FileContentImageRef) DeepCopy() *FileContentImageRef

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

func (*FileContentImageRef) DeepCopyInto

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

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

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

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

func (*InfrastructureStatusNetworking) DeepCopyInto

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"`
	// Priority (or weight) is the importance by which this machine deployment will be scaled by cluster autoscaling.
	// +optional
	Priority *int32 `json:"priority,omitempty"`
}

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/development/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

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

func (in *NodeTemplate) DeepCopy() *NodeTemplate

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

func (*NodeTemplate) DeepCopyInto

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

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.
	// After Gardener v1.112, this will be only set for OperatingSystemConfigs with purpose 'provision'.
	// +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 PluginConfig

type PluginConfig struct {
	// Op is the operation for the given path. Possible values are 'add' and 'remove', defaults to 'add'.
	// +optional
	Op *PluginPathOperation `json:"op,omitempty"`
	// Path is a list of elements that construct the path in the plugins section.
	Path []string `json:"path"`
	// Values are the values configured at the given path. If defined, it is expected as json format:
	// - A given json object will be put to the given path.
	// - If not configured, only the table entry to be created.
	// +optional
	Values *apiextensionsv1.JSON `json:"values,omitempty"`
}

PluginConfig contains configuration values for the containerd plugins section.

func (*PluginConfig) DeepCopy

func (in *PluginConfig) DeepCopy() *PluginConfig

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

func (*PluginConfig) DeepCopyInto

func (in *PluginConfig) DeepCopyInto(out *PluginConfig)

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

type PluginPathOperation

type PluginPathOperation string

PluginPathOperation is a type alias for operations at containerd's plugin configuration.

const (
	// AddPluginPathOperation is the name of the 'add' operation.
	AddPluginPathOperation PluginPathOperation = "add"
	// RemovePluginPathOperation is the name of the 'remove' operation.
	RemovePluginPathOperation PluginPathOperation = "remove"
)

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

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

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

func (in *RegistryConfig) DeepCopy() *RegistryConfig

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

func (*RegistryConfig) DeepCopyInto

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

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

func (in *RegistryHost) DeepCopy() *RegistryHost

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

func (*RegistryHost) DeepCopyInto

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

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 referenceable.
	// +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"`
	// 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.
	UserDataSecretRef corev1.SecretKeySelector `json:"userDataSecretRef"`
	// 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"`
	// Priority (or weight) is the importance by which this worker pool will be scaled by cluster autoscaling.
	// +optional
	Priority *int32 `json:"priority,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.

Jump to

Keyboard shortcuts

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