core

package
v0.2.0 Latest Latest
Warning

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

Go to latest
Published: Jan 29, 2025 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Overview

Package core is the internal version of the API. +groupName=core.gardener.cloud

Index

Constants

View Source
const (
	// BackupBucketSeedName is the field selector path for finding
	// the Seed cluster of a core.gardener.cloud/v1beta1 BackupBucket.
	BackupBucketSeedName = "spec.seedName"
	// BackupEntrySeedName is the field selector path for finding
	// the Seed cluster of a core.gardener.cloud/v1beta1 BackupEntry.
	BackupEntrySeedName = "spec.seedName"
	// BackupEntrySeedName is the field selector path for finding
	// the BackupBucket for a core.gardener.cloud/v1beta1 BackupEntry.
	BackupEntryBucketName = "spec.bucketName"

	// InternalSecretType is the field selector path for finding
	// the secret type of a core.gardener.cloud/v1beta1 InternalSecret.
	InternalSecretType = "type"

	// ProjectNamespace is the field selector path for filtering by namespace
	// for core.gardener.cloud/v1beta1 Project.
	ProjectNamespace = "spec.namespace"

	// RegistrationRefName is the field selector path for finding
	// the ControllerRegistration name of a core.gardener.cloud/{v1alpha1,v1beta1} ControllerInstallation.
	RegistrationRefName = "spec.registrationRef.name"
	// SeedRefName is the field selector path for finding
	// the Seed name of a core.gardener.cloud/{v1alpha1,v1beta1} ControllerInstallation.
	SeedRefName = "spec.seedRef.name"

	// ShootCloudProfileName is the field selector path for finding
	// the CloudProfile name of a core.gardener.cloud/{v1alpha1,v1beta1} Shoot.
	ShootCloudProfileName = "spec.cloudProfileName"
	// ShootCloudProfileRefName is the field selector path for finding
	// the referenced CloudProfile name of a core.gardener.cloud/{v1alpha1,v1beta1} Shoot.
	ShootCloudProfileRefName = "spec.cloudProfile.Name"
	// ShootCloudProfileRefKind is the field selector path for finding
	// the referenced CloudProfile kind of a core.gardener.cloud/{v1alpha1,v1beta1} Shoot.
	ShootCloudProfileRefKind = "spec.cloudProfile.Kind"
	// ShootSeedName is the field selector path for finding
	// the Seed cluster of a core.gardener.cloud/{v1alpha1,v1beta1} Shoot.
	ShootSeedName = "spec.seedName"
	// ShootStatusSeedName is the field selector path for finding
	// the Seed cluster of a core.gardener.cloud/{v1alpha1,v1beta1} Shoot
	// referred in the status.
	ShootStatusSeedName = "status.seedName"

	// NamespacedCloudProfileParentRefName is the field selector path for finding
	// the parent CloudProfile of a core.gardener.cloud/v1beta1 NamespacedCloudProfile.
	NamespacedCloudProfileParentRefName = "spec.parent.name"
)

Field path constants that are specific to the internal API representation.

View Source
const (
	// VolumeClassStandard is a constant for the standard volume class.
	VolumeClassStandard string = "standard"
	// VolumeClassPremium is a constant for the premium volume class.
	VolumeClassPremium string = "premium"
)
View Source
const (
	// ProjectMemberAdmin is a const for a role that provides full admin access.
	ProjectMemberAdmin = "admin"
	// ProjectMemberOwner is a const for a role that provides full owner access.
	ProjectMemberOwner = "owner"
	// ProjectMemberViewer is a const for a role that provides limited permissions to only view some resources.
	ProjectMemberViewer = "viewer"
	// ProjectMemberUserAccessManager is a const for a role that provides permissions to manage human user(s, (groups)).
	ProjectMemberUserAccessManager = "uam"
	// ProjectMemberServiceAccountManager is a const for a role that provides permissions to manage service accounts and request tokens for them.
	ProjectMemberServiceAccountManager = "serviceaccountmanager"
	// ProjectMemberExtensionPrefix is a prefix for custom roles that are not known by Gardener.
	ProjectMemberExtensionPrefix = "extension:"
)
View Source
const (
	// ProjectPending indicates that the project reconciliation is pending.
	ProjectPending ProjectPhase = "Pending"
	// ProjectReady indicates that the project reconciliation was successful.
	ProjectReady ProjectPhase = "Ready"
	// ProjectFailed indicates that the project reconciliation failed.
	ProjectFailed ProjectPhase = "Failed"
	// ProjectTerminating indicates that the project is in termination process.
	ProjectTerminating ProjectPhase = "Terminating"

	// ProjectEventNamespaceReconcileFailed indicates that the namespace reconciliation has failed.
	ProjectEventNamespaceReconcileFailed = "NamespaceReconcileFailed"
	// ProjectEventNamespaceReconcileSuccessful indicates that the namespace reconciliation has succeeded.
	ProjectEventNamespaceReconcileSuccessful = "NamespaceReconcileSuccessful"
	// ProjectEventNamespaceNotEmpty indicates that the namespace cannot be released because it is not empty.
	ProjectEventNamespaceNotEmpty = "NamespaceNotEmpty"
	// ProjectEventNamespaceDeletionFailed indicates that the namespace deletion failed.
	ProjectEventNamespaceDeletionFailed = "NamespaceDeletionFailed"
	// ProjectEventNamespaceMarkedForDeletion indicates that the namespace has been successfully marked for deletion.
	ProjectEventNamespaceMarkedForDeletion = "NamespaceMarkedForDeletion"
)
View Source
const (
	// QuotaMetricCPU is the constraint for the amount of CPUs
	QuotaMetricCPU corev1.ResourceName = corev1.ResourceCPU
	// QuotaMetricGPU is the constraint for the amount of GPUs (e.g. from Nvidia)
	QuotaMetricGPU corev1.ResourceName = "gpu"
	// QuotaMetricMemory is the constraint for the amount of memory
	QuotaMetricMemory corev1.ResourceName = corev1.ResourceMemory
	// QuotaMetricStorageStandard is the constraint for the size of a standard disk
	QuotaMetricStorageStandard corev1.ResourceName = corev1.ResourceStorage + ".standard"
	// QuotaMetricStoragePremium is the constraint for the size of a premium disk (e.g. SSD)
	QuotaMetricStoragePremium corev1.ResourceName = corev1.ResourceStorage + ".premium"
	// QuotaMetricLoadbalancer is the constraint for the amount of loadbalancers
	QuotaMetricLoadbalancer corev1.ResourceName = "loadbalancer"
)
View Source
const (
	// DefaultPodNetworkCIDR is a constant for the default pod network CIDR of a Shoot cluster.
	DefaultPodNetworkCIDR = "100.96.0.0/11"
	// DefaultServiceNetworkCIDR is a constant for the default service network CIDR of a Shoot cluster.
	DefaultServiceNetworkCIDR = "100.64.0.0/13"
)
View Source
const (
	// MaintenanceTimeWindowDurationMinimum is the minimum duration for a maintenance time window.
	MaintenanceTimeWindowDurationMinimum = 30 * time.Minute
	// MaintenanceTimeWindowDurationMaximum is the maximum duration for a maintenance time window.
	MaintenanceTimeWindowDurationMaximum = 6 * time.Hour
)
View Source
const (
	// ShootEventImageVersionMaintenance indicates that a maintenance operation regarding the image version has been performed.
	ShootEventImageVersionMaintenance = "MachineImageVersionMaintenance"
	// ShootEventK8sVersionMaintenance indicates that a maintenance operation regarding the K8s version has been performed.
	ShootEventK8sVersionMaintenance = "KubernetesVersionMaintenance"
	// ShootEventHibernationEnabled indicates that hibernation started.
	ShootEventHibernationEnabled = "Hibernated"
	// ShootEventHibernationDisabled indicates that hibernation ended.
	ShootEventHibernationDisabled = "WokenUp"
	// ShootEventSchedulingSuccessful indicates that a scheduling decision was taken successfully.
	ShootEventSchedulingSuccessful = "SchedulingSuccessful"
	// ShootEventSchedulingFailed indicates that a scheduling decision failed.
	ShootEventSchedulingFailed = "SchedulingFailed"
)
View Source
const (
	// ConditionAvailable is a condition type for indicating availability.
	ConditionAvailable ConditionType = "Available"

	// ConditionTrue means a resource is in the condition.
	ConditionTrue ConditionStatus = "True"
	// ConditionFalse means a resource is not in the condition.
	ConditionFalse ConditionStatus = "False"
	// ConditionUnknown means Gardener can't decide if a resource is in the condition or not.
	ConditionUnknown ConditionStatus = "Unknown"
	// ConditionProgressing means the condition was seen true, failed but stayed within a predefined failure threshold.
	// In the future, we could add other intermediate conditions, e.g. ConditionDegraded.
	ConditionProgressing ConditionStatus = "Progressing"

	// ConditionCheckError is a constant for a reason in condition.
	ConditionCheckError = "ConditionCheckError"
)
View Source
const (
	// BackupEntryForceDeletion is a constant for an annotation on a BackupEntry indicating that it should be force deleted.
	BackupEntryForceDeletion = "backupentry.core.gardener.cloud/force-deletion"
)
View Source
const DNSUnmanaged string = "unmanaged"

DNSUnmanaged is a constant for the 'unmanaged' DNS provider.

View Source
const DefaultDomain = "cluster.local"

DefaultDomain is the default value in the Shoot's '.spec.dns.domain' when '.spec.dns.provider' is 'unmanaged'

View Source
const (
	// GardenerName is the value in a Garden resource's `.metadata.finalizers[]` array on which the Gardener will react
	// when performing a delete request on a resource.
	GardenerName = "gardener"
)
View Source
const (
	// GardenerSeedLeaseNamespace is the namespace in which Gardenlet will report Seeds'
	// status using Lease resources for each Seed
	GardenerSeedLeaseNamespace = "gardener-system-seed-lease"
)
View Source
const GroupName = "core.gardener.cloud"

GroupName is the name of the core API group.

View Source
const (
	// KubernetesDashboardAuthModeToken uses token-based mode for auth.
	KubernetesDashboardAuthModeToken = "token"
)
View Source
const (
	// ResourceShoots is a resource constant for the number of shoots.
	ResourceShoots corev1.ResourceName = "shoots"
)

Resource constants for Gardener object types

View Source
const (
	// SeedTaintProtected is a constant for a taint key on a seed that marks it as protected. Protected seeds
	// may only be used by shoots in the `garden` namespace.
	SeedTaintProtected = "seed.gardener.cloud/protected"
)

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 (
	// DefaultWorkerMaxSurge is the default value for Worker MaxSurge.
	DefaultWorkerMaxSurge = intstr.FromInt32(1)
	// DefaultWorkerMaxUnavailable is the default value for Worker MaxUnavailable.
	DefaultWorkerMaxUnavailable = intstr.FromInt32(0)
)
View Source
var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: runtime.APIVersionInternal}

SchemeGroupVersion is group version used to register these objects.

Functions

func IsIPv4SingleStack

func IsIPv4SingleStack(ipFamilies []IPFamily) bool

IsIPv4SingleStack determines whether the given list of IP families specifies IPv4 single-stack networking.

func IsIPv6SingleStack

func IsIPv6SingleStack(ipFamilies []IPFamily) bool

IsIPv6SingleStack determines whether the given list of IP families specifies IPv6 single-stack networking.

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 back a Group qualified GroupResource.

Types

type APIServerLogging

type APIServerLogging struct {
	// Verbosity is the kube-apiserver log verbosity level
	Verbosity *int32
	// HTTPAccessVerbosity is the kube-apiserver access logs level
	HTTPAccessVerbosity *int32
}

APIServerLogging contains configuration for the logs level and http access logs

func (*APIServerLogging) DeepCopy

func (in *APIServerLogging) DeepCopy() *APIServerLogging

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

func (*APIServerLogging) DeepCopyInto

func (in *APIServerLogging) DeepCopyInto(out *APIServerLogging)

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

type APIServerRequests

type APIServerRequests struct {
	// MaxNonMutatingInflight is the maximum number of non-mutating requests in flight at a given time. When the server
	// exceeds this, it rejects requests.
	MaxNonMutatingInflight *int32
	// MaxMutatingInflight is the maximum number of mutating requests in flight at a given time. When the server
	// exceeds this, it rejects requests.
	MaxMutatingInflight *int32
}

APIServerRequests contains configuration for request-specific settings for the kube-apiserver.

func (*APIServerRequests) DeepCopy

func (in *APIServerRequests) DeepCopy() *APIServerRequests

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

func (*APIServerRequests) DeepCopyInto

func (in *APIServerRequests) DeepCopyInto(out *APIServerRequests)

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

type AccessRestriction

type AccessRestriction struct {
	// Name is the name of the restriction.
	Name string
}

AccessRestriction describes an access restriction for a Kubernetes cluster (e.g., EU access-only).

func (*AccessRestriction) DeepCopy

func (in *AccessRestriction) DeepCopy() *AccessRestriction

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

func (*AccessRestriction) DeepCopyInto

func (in *AccessRestriction) DeepCopyInto(out *AccessRestriction)

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

type AccessRestrictionWithOptions

type AccessRestrictionWithOptions struct {
	AccessRestriction
	// Options is a map of additional options for the access restriction.
	// +optional
	Options map[string]string
}

AccessRestrictionWithOptions describes an access restriction for a Kubernetes cluster (e.g., EU access-only) and allows to specify additional options.

func (*AccessRestrictionWithOptions) DeepCopy

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

func (*AccessRestrictionWithOptions) DeepCopyInto

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

type Addon

type Addon struct {
	// Enabled indicates whether the addon is enabled or not.
	Enabled bool
}

Addon allows enabling or disabling a specific addon and is used to derive from.

func (*Addon) DeepCopy

func (in *Addon) DeepCopy() *Addon

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

func (*Addon) DeepCopyInto

func (in *Addon) DeepCopyInto(out *Addon)

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

type Addons

type Addons struct {
	// KubernetesDashboard holds configuration settings for the kubernetes dashboard addon.
	KubernetesDashboard *KubernetesDashboard
	// NginxIngress holds configuration settings for the nginx-ingress addon.
	NginxIngress *NginxIngress
}

Addons is a collection of configuration for specific addons which are managed by the Gardener.

func (*Addons) DeepCopy

func (in *Addons) DeepCopy() *Addons

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

func (*Addons) DeepCopyInto

func (in *Addons) DeepCopyInto(out *Addons)

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

type AdmissionPlugin

type AdmissionPlugin struct {
	// Name is the name of the plugin.
	Name string
	// Disabled specifies whether this plugin should be disabled.
	Disabled *bool
	// Config is the configuration of the plugin.
	Config *runtime.RawExtension
	// KubeconfigSecretName specifies the name of a secret containing the kubeconfig for this admission plugin.
	KubeconfigSecretName *string
}

AdmissionPlugin contains information about a specific admission plugin and its corresponding configuration.

func (*AdmissionPlugin) DeepCopy

func (in *AdmissionPlugin) DeepCopy() *AdmissionPlugin

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

func (*AdmissionPlugin) DeepCopyInto

func (in *AdmissionPlugin) DeepCopyInto(out *AdmissionPlugin)

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

type Alerting

type Alerting struct {
	// MonitoringEmailReceivers is a list of recipients for alerts
	EmailReceivers []string
}

Alerting contains information about how alerting will be done (i.e. who will receive alerts and how).

func (*Alerting) DeepCopy

func (in *Alerting) DeepCopy() *Alerting

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

func (*Alerting) DeepCopyInto

func (in *Alerting) DeepCopyInto(out *Alerting)

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

type AuditConfig

type AuditConfig struct {
	// AuditPolicy contains configuration settings for audit policy of the kube-apiserver.
	AuditPolicy *AuditPolicy
}

AuditConfig contains settings for audit of the api server

func (*AuditConfig) DeepCopy

func (in *AuditConfig) DeepCopy() *AuditConfig

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

func (*AuditConfig) DeepCopyInto

func (in *AuditConfig) DeepCopyInto(out *AuditConfig)

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

type AuditPolicy

type AuditPolicy struct {
	// ConfigMapRef is a reference to a ConfigMap object in the same namespace,
	// which contains the audit policy for the kube-apiserver.
	ConfigMapRef *corev1.ObjectReference
}

AuditPolicy contains audit policy for kube-apiserver

func (*AuditPolicy) DeepCopy

func (in *AuditPolicy) DeepCopy() *AuditPolicy

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

func (*AuditPolicy) DeepCopyInto

func (in *AuditPolicy) DeepCopyInto(out *AuditPolicy)

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

type AuthorizerKubeconfigReference

type AuthorizerKubeconfigReference struct {
	// AuthorizerName is the name of a webhook authorizer.
	AuthorizerName string
	// SecretName is the name of a secret containing the kubeconfig.
	SecretName string
}

AuthorizerKubeconfigReference is a reference for a kubeconfig for a authorization webhook.

func (*AuthorizerKubeconfigReference) DeepCopy

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

func (*AuthorizerKubeconfigReference) DeepCopyInto

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

type AvailabilityZone

type AvailabilityZone struct {
	// Name is an availability zone name.
	Name string
	// UnavailableMachineTypes is a list of machine type names that are not availability in this zone.
	UnavailableMachineTypes []string
	// UnavailableVolumeTypes is a list of volume type names that are not availability in this zone.
	UnavailableVolumeTypes []string
}

AvailabilityZone is an availability zone.

func (*AvailabilityZone) DeepCopy

func (in *AvailabilityZone) DeepCopy() *AvailabilityZone

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

func (*AvailabilityZone) DeepCopyInto

func (in *AvailabilityZone) DeepCopyInto(out *AvailabilityZone)

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

type BackupBucket

type BackupBucket struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Specification of the Backup Bucket.
	Spec BackupBucketSpec
	// Most recently observed status of the Backup Bucket.
	Status BackupBucketStatus
}

BackupBucket holds details about 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.

type BackupBucketList

type BackupBucketList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of BackupBucket.
	Items []BackupBucket
}

BackupBucketList is a list of BackupBucket objects.

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 BackupBucketProvider

type BackupBucketProvider struct {
	// Type is the type of provider.
	Type string
	// Region is the region of the bucket.
	Region string
}

BackupBucketProvider holds the details of cloud provider of the object store.

func (*BackupBucketProvider) DeepCopy

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

func (*BackupBucketProvider) DeepCopyInto

func (in *BackupBucketProvider) DeepCopyInto(out *BackupBucketProvider)

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

type BackupBucketSpec

type BackupBucketSpec struct {
	// Provider holds the details of cloud provider of the object store. This field is immutable.
	Provider BackupBucketProvider
	// ProviderConfig is the configuration passed to BackupBucket resource.
	ProviderConfig *runtime.RawExtension
	// SecretRef is a reference to a secret that contains the credentials to access object store.
	SecretRef corev1.SecretReference
	// SeedName holds the name of the seed allocated to BackupBucket for running controller.
	// This field is immutable.
	SeedName *string
}

BackupBucketSpec is the specification of a Backup Bucket.

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 {
	// ProviderStatus is the configuration passed to BackupBucket resource.
	ProviderStatus *runtime.RawExtension
	// LastOperation holds information about the last operation on the BackupBucket.
	LastOperation *LastOperation
	// LastError holds information about the last occurred error during an operation.
	LastError *LastError
	// ObservedGeneration is the most recent generation observed for this BackupBucket. It corresponds to the
	// BackupBucket's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64
	// GeneratedSecretRef is reference to the secret generated by backup bucket, which
	// will have object store specific credentials.
	GeneratedSecretRef *corev1.SecretReference
}

BackupBucketStatus holds the most recently observed status of the Backup Bucket.

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
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec contains the specification of the Backup Entry.
	Spec BackupEntrySpec
	// Status contains the most recently observed status of the Backup Entry.
	Status BackupEntryStatus
}

BackupEntry holds details about shoot backup.

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.

type BackupEntryList

type BackupEntryList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of BackupEntry.
	Items []BackupEntry
}

BackupEntryList is a list of BackupEntry objects.

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 {
	// BucketName is the name of backup bucket for this Backup Entry.
	BucketName string
	// SeedName holds the name of the seed to which this BackupEntry is scheduled
	SeedName *string
}

BackupEntrySpec is the specification of a Backup Entry.

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 {
	// LastOperation holds information about the last operation on the BackupEntry.
	LastOperation *LastOperation
	// LastError holds information about the last occurred error during an operation.
	LastError *LastError
	// ObservedGeneration is the most recent generation observed for this BackupEntry. It corresponds to the
	// BackupEntry's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64
	// SeedName is the name of the seed to which this BackupEntry is currently scheduled. This field is populated
	// at the beginning of a create/reconcile operation. It is used when moving the BackupEntry between seeds.
	SeedName *string
	// MigrationStartTime is the time when a migration to a different seed was initiated.
	MigrationStartTime *metav1.Time
}

BackupEntryStatus holds the most recently observed status of the Backup Entry.

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 {
	// MachineImage contains the bastions machine image properties
	MachineImage *BastionMachineImage
	// MachineType contains the bastions machine type properties
	MachineType *BastionMachineType
}

Bastion contains the bastions creation info

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.

type BastionMachineImage

type BastionMachineImage struct {
	// Name of the machine image
	Name string
	// Version of the machine image
	Version *string
}

BastionMachineImage contains the bastions machine image properties

func (*BastionMachineImage) DeepCopy

func (in *BastionMachineImage) DeepCopy() *BastionMachineImage

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

func (*BastionMachineImage) DeepCopyInto

func (in *BastionMachineImage) DeepCopyInto(out *BastionMachineImage)

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

type BastionMachineType

type BastionMachineType struct {
	// Name of the machine type
	Name string
}

BastionMachineType contains the bastions machine type properties

func (*BastionMachineType) DeepCopy

func (in *BastionMachineType) DeepCopy() *BastionMachineType

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

func (*BastionMachineType) DeepCopyInto

func (in *BastionMachineType) DeepCopyInto(out *BastionMachineType)

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

type CARotation

type CARotation struct {
	// Phase describes the phase of the certificate authority credential rotation.
	Phase CredentialsRotationPhase
	// LastCompletionTime is the most recent time when the certificate authority credential rotation was successfully
	// completed.
	LastCompletionTime *metav1.Time
	// LastInitiationTime is the most recent time when the certificate authority credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastInitiationFinishedTime is the recent time when the certificate authority credential rotation initiation was
	// completed.
	LastInitiationFinishedTime *metav1.Time
	// LastCompletionTriggeredTime is the recent time when the certificate authority credential rotation completion was
	// triggered.
	LastCompletionTriggeredTime *metav1.Time
}

CARotation contains information about the certificate authority credential rotation.

func (*CARotation) DeepCopy

func (in *CARotation) DeepCopy() *CARotation

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

func (*CARotation) DeepCopyInto

func (in *CARotation) DeepCopyInto(out *CARotation)

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

type CRI

type CRI struct {
	// The name of the CRI library
	Name CRIName
	// ContainerRuntimes is the list of the required container runtimes supported for a worker pool.
	ContainerRuntimes []ContainerRuntime
}

CRI contains information about the Container Runtimes.

func (*CRI) DeepCopy

func (in *CRI) DeepCopy() *CRI

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

func (*CRI) DeepCopyInto

func (in *CRI) DeepCopyInto(out *CRI)

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 CloudProfile

type CloudProfile struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec defines the provider environment properties.
	Spec CloudProfileSpec
}

CloudProfile represents certain properties about a provider environment.

func (*CloudProfile) DeepCopy

func (in *CloudProfile) DeepCopy() *CloudProfile

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

func (*CloudProfile) DeepCopyInto

func (in *CloudProfile) DeepCopyInto(out *CloudProfile)

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

func (*CloudProfile) DeepCopyObject

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

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

type CloudProfileList

type CloudProfileList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of CloudProfiles.
	Items []CloudProfile
}

CloudProfileList is a collection of CloudProfiles.

func (*CloudProfileList) DeepCopy

func (in *CloudProfileList) DeepCopy() *CloudProfileList

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

func (*CloudProfileList) DeepCopyInto

func (in *CloudProfileList) DeepCopyInto(out *CloudProfileList)

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

func (*CloudProfileList) DeepCopyObject

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

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

type CloudProfileReference

type CloudProfileReference struct {
	// Kind contains a CloudProfile kind.
	Kind string
	// Name contains the name of the referenced CloudProfile.
	Name string
}

CloudProfileReference holds the information about a CloudProfile or a NamespacedCloudProfile.

func (*CloudProfileReference) DeepCopy

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

func (*CloudProfileReference) DeepCopyInto

func (in *CloudProfileReference) DeepCopyInto(out *CloudProfileReference)

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

type CloudProfileSpec

type CloudProfileSpec struct {
	// CABundle is a certificate bundle which will be installed onto every host machine of shoot cluster targeting this profile.
	CABundle *string
	// Kubernetes contains constraints regarding allowed values of the 'kubernetes' block in the Shoot specification.
	Kubernetes KubernetesSettings
	// MachineImages contains constraints regarding allowed values for machine images in the Shoot specification.
	MachineImages []MachineImage
	// MachineTypes contains constraints regarding allowed values for machine types in the 'workers' block in the Shoot specification.
	MachineTypes []MachineType
	// ProviderConfig contains provider-specific configuration for the profile.
	ProviderConfig *runtime.RawExtension
	// Regions contains constraints regarding allowed values for regions and zones.
	Regions []Region
	// SeedSelector contains an optional list of labels on `Seed` resources that marks those seeds whose shoots may use this provider profile.
	// An empty list means that all seeds of the same provider type are supported.
	// This is useful for environments that are of the same type (like openstack) but may have different "instances"/landscapes.
	// Optionally a list of possible providers can be added to enable cross-provider scheduling. By default, the provider
	// type of the seed must match the shoot's provider.
	SeedSelector *SeedSelector
	// Type is the name of the provider.
	Type string
	// VolumeTypes contains constraints regarding allowed values for volume types in the 'workers' block in the Shoot specification.
	VolumeTypes []VolumeType
	// Bastion contains machine and image properties
	Bastion *Bastion
}

CloudProfileSpec is the specification of a CloudProfile. It must contain exactly one of its defined keys.

func (*CloudProfileSpec) DeepCopy

func (in *CloudProfileSpec) DeepCopy() *CloudProfileSpec

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

func (*CloudProfileSpec) DeepCopyInto

func (in *CloudProfileSpec) DeepCopyInto(out *CloudProfileSpec)

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

type ClusterAutoscaler

type ClusterAutoscaler struct {
	// ScaleDownDelayAfterAdd defines how long after scale up that scale down evaluation resumes (default: 1 hour).
	ScaleDownDelayAfterAdd *metav1.Duration
	// ScaleDownDelayAfterDelete how long after node deletion that scale down evaluation resumes, defaults to scanInterval (default: 0 secs).
	ScaleDownDelayAfterDelete *metav1.Duration
	// ScaleDownDelayAfterFailure how long after scale down failure that scale down evaluation resumes (default: 3 mins).
	ScaleDownDelayAfterFailure *metav1.Duration
	// ScaleDownUnneededTime defines how long a node should be unneeded before it is eligible for scale down (default: 30 mins).
	ScaleDownUnneededTime *metav1.Duration
	// ScaleDownUtilizationThreshold defines the threshold in fraction (0.0 - 1.0) under which a node is being removed (default: 0.5).
	ScaleDownUtilizationThreshold *float64
	// ScanInterval how often cluster is reevaluated for scale up or down (default: 10 secs).
	ScanInterval *metav1.Duration
	// Expander defines the algorithm to use during scale up (default: least-waste).
	// See: https://github.com/gardener/autoscaler/blob/machine-controller-manager-provider/cluster-autoscaler/FAQ.md#what-are-expanders.
	Expander *ExpanderMode
	// MaxNodeProvisionTime defines how long CA waits for node to be provisioned (default: 20 mins).
	MaxNodeProvisionTime *metav1.Duration
	// MaxGracefulTerminationSeconds is the number of seconds CA waits for pod termination when trying to scale down a node (default: 600).
	MaxGracefulTerminationSeconds *int32
	// StartupTaints specifies a list of taint keys to ignore in node templates when considering to scale a node group.
	// Cluster Autoscaler treats nodes tainted with startup taints as unready, but taken into account during scale up logic, assuming they will become ready shortly.
	StartupTaints []string
	// StatusTaints specifies a list of taint keys to ignore in node templates when considering to scale a node group.
	// Cluster Autoscaler internally treats nodes tainted with status taints as ready, but filtered out during scale up logic.
	StatusTaints []string
	// IgnoreTaints specifies a list of taint keys to ignore in node templates when considering to scale a node group.
	// Ignore taints are deprecated as of K8S 1.29 and treated as startup taints.
	IgnoreTaints []string
	// NewPodScaleUpDelay specifies how long CA should ignore newly created pods before they have to be considered for scale-up.
	NewPodScaleUpDelay *metav1.Duration
	// MaxEmptyBulkDelete specifies the maximum number of empty nodes that can be deleted at the same time (default: 10).
	MaxEmptyBulkDelete *int32
	// IgnoreDaemonsetsUtilization allows CA to ignore DaemonSet pods when calculating resource utilization for scaling down.
	IgnoreDaemonsetsUtilization *bool
	// Verbosity allows CA to modify its log level.
	Verbosity *int32
}

ClusterAutoscaler contains the configuration flags for the Kubernetes cluster autoscaler.

func (*ClusterAutoscaler) DeepCopy

func (in *ClusterAutoscaler) DeepCopy() *ClusterAutoscaler

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

func (*ClusterAutoscaler) DeepCopyInto

func (in *ClusterAutoscaler) DeepCopyInto(out *ClusterAutoscaler)

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

type ClusterAutoscalerOptions

type ClusterAutoscalerOptions struct {
	// ScaleDownUtilizationThreshold defines the threshold in fraction (0.0 - 1.0) under which a node is being removed.
	ScaleDownUtilizationThreshold *float64
	// ScaleDownGpuUtilizationThreshold defines the threshold in fraction (0.0 - 1.0) of gpu resources under which a node is being removed.
	ScaleDownGpuUtilizationThreshold *float64
	// ScaleDownUnneededTime defines how long a node should be unneeded before it is eligible for scale down.
	ScaleDownUnneededTime *metav1.Duration
	// ScaleDownUnreadyTime defines how long an unready node should be unneeded before it is eligible for scale down.
	ScaleDownUnreadyTime *metav1.Duration
	// MaxNodeProvisionTime defines how long CA waits for node to be provisioned.
	MaxNodeProvisionTime *metav1.Duration
}

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 Condition

type Condition struct {
	// Type of the condition.
	Type ConditionType
	// Status of the condition, one of True, False, Unknown.
	Status ConditionStatus
	// Last time the condition transitioned from one status to another.
	LastTransitionTime metav1.Time
	// Last time the condition was updated.
	LastUpdateTime metav1.Time
	// The reason for the condition's last transition.
	Reason string
	// A human readable message indicating details about the transition.
	Message string
	// Well-defined error codes in case the condition reports a problem.
	Codes []ErrorCode
}

Condition holds the information about the state of a resource.

func (*Condition) DeepCopy

func (in *Condition) DeepCopy() *Condition

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

func (*Condition) DeepCopyInto

func (in *Condition) DeepCopyInto(out *Condition)

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

type ConditionStatus

type ConditionStatus string

ConditionStatus is the status of a condition.

type ConditionType

type ConditionType string

ConditionType is a string alias.

const (
	// ControllerInstallationHealthy is a condition type for indicating whether the controller is healthy.
	ControllerInstallationHealthy ConditionType = "Healthy"
	// ControllerInstallationInstalled is a condition type for indicating whether the controller has been installed.
	ControllerInstallationInstalled ConditionType = "Installed"
	// ControllerInstallationProgressing is a condition type for indicating whether the controller is progressing.
	ControllerInstallationProgressing ConditionType = "Progressing"
	// ControllerInstallationValid is a condition type for indicating whether the installation request is valid.
	ControllerInstallationValid ConditionType = "Valid"
	// ControllerInstallationRequired is a condition type for indicating that the respective extension controller is
	// still required on the seed cluster as corresponding extension resources still exist.
	ControllerInstallationRequired ConditionType = "Required"
)
const (
	// SeedBackupBucketsReady is a constant for a condition type indicating that associated BackupBuckets are ready.
	SeedBackupBucketsReady ConditionType = "BackupBucketsReady"
	// SeedExtensionsReady is a constant for a condition type indicating that the extensions are ready.
	SeedExtensionsReady ConditionType = "ExtensionsReady"
	// SeedGardenletReady is a constant for a condition type indicating that the Gardenlet is ready.
	SeedGardenletReady ConditionType = "GardenletReady"
	// SeedSystemComponentsHealthy is a constant for a condition type indicating the system components health.
	SeedSystemComponentsHealthy ConditionType = "SeedSystemComponentsHealthy"
)
const (
	// ShootAPIServerAvailable is a constant for a condition type indicating that the Shoot cluster's API server is available.
	ShootAPIServerAvailable ConditionType = "APIServerAvailable"
	// ShootControlPlaneHealthy is a constant for a condition type indicating the health of core control plane components.
	ShootControlPlaneHealthy ConditionType = "ControlPlaneHealthy"
	// ShootObservabilityComponentsHealthy is a constant for a condition type indicating the health of observability components.
	ShootObservabilityComponentsHealthy ConditionType = "ObservabilityComponentsHealthy"
	// ShootEveryNodeReady is a constant for a condition type indicating the node health.
	ShootEveryNodeReady ConditionType = "EveryNodeReady"
	// ShootSystemComponentsHealthy is a constant for a condition type indicating the system components health.
	ShootSystemComponentsHealthy ConditionType = "SystemComponentsHealthy"
	// ShootHibernationPossible is a constant for a condition type indicating whether the Shoot can be hibernated.
	ShootHibernationPossible ConditionType = "HibernationPossible"
	// ShootMaintenancePreconditionsSatisfied is a constant for a condition type indicating whether all preconditions
	// for a shoot maintenance operation are satisfied.
	ShootMaintenancePreconditionsSatisfied ConditionType = "MaintenancePreconditionsSatisfied"
)

type ContainerRuntime

type ContainerRuntime struct {
	// Type is the type of the Container Runtime.
	Type string
	// ProviderConfig is the configuration passed to the ContainerRuntime resource.
	ProviderConfig *runtime.RawExtension
}

ContainerRuntime contains information about worker's available container runtime

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.

type ControlPlane

type ControlPlane struct {
	// HighAvailability holds the configuration settings for high availability of the
	// control plane of a shoot.
	HighAvailability *HighAvailability
}

ControlPlane holds information about the general settings for the control plane of a shoot.

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.

type ControllerDeployment

type ControllerDeployment struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Type is the deployment type.
	// This field correlates with the Type field in the v1beta1 API version.
	// It is only set if a custom type (other than helm) is configured in the v1beta1 API version and the object is
	// converted to the internal version. If the helm type is used in v1beta1, the Helm section will be set in the
	// internal API version instead of this field. In the v1 API version, the value is represented using an annotation.
	Type string
	// ProviderConfig contains type-specific configuration. It contains assets that deploy the controller.
	// This field correlates with the ProviderConfig field in the v1beta1 API version.
	// It is only set if a custom type (other than helm) is configured in the v1beta1 API version and the object is
	// converted to the internal version. If the helm type is used in v1beta1, the Helm section will be set in the
	// internal API version instead of this field. In the v1 API version, the value is represented using an annotation.
	ProviderConfig runtime.Object
	// Helm configures that an extension controller is deployed using helm.
	Helm *HelmControllerDeployment
}

ControllerDeployment contains information about how this controller is deployed.

func (*ControllerDeployment) DeepCopy

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

func (*ControllerDeployment) DeepCopyInto

func (in *ControllerDeployment) DeepCopyInto(out *ControllerDeployment)

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

func (*ControllerDeployment) DeepCopyObject

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

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

type ControllerDeploymentList

type ControllerDeploymentList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of ControllerDeployments.
	Items []ControllerDeployment
}

ControllerDeploymentList is a collection of ControllerDeployments.

func (*ControllerDeploymentList) DeepCopy

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

func (*ControllerDeploymentList) DeepCopyInto

func (in *ControllerDeploymentList) DeepCopyInto(out *ControllerDeploymentList)

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

func (*ControllerDeploymentList) DeepCopyObject

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

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

type ControllerDeploymentPolicy

type ControllerDeploymentPolicy string

ControllerDeploymentPolicy is a string alias.

const (
	// ControllerDeploymentPolicyOnDemand specifies that the controller shall be only deployed if required by another
	// resource. If nothing requires it then the controller shall not be deployed.
	ControllerDeploymentPolicyOnDemand ControllerDeploymentPolicy = "OnDemand"
	// ControllerDeploymentPolicyAlways specifies that the controller shall be deployed always, independent of whether
	// another resource requires it or the respective seed has shoots.
	ControllerDeploymentPolicyAlways ControllerDeploymentPolicy = "Always"
	// ControllerDeploymentPolicyAlwaysExceptNoShoots specifies that the controller shall be deployed always, independent of
	// whether another resource requires it, but only when the respective seed has at least one shoot.
	ControllerDeploymentPolicyAlwaysExceptNoShoots ControllerDeploymentPolicy = "AlwaysExceptNoShoots"
)

type ControllerInstallation

type ControllerInstallation struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec contains the specification of this installation.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ControllerInstallationSpec
	// Status contains the status of this installation.
	Status ControllerInstallationStatus
}

ControllerInstallation represents an installation request for an external controller.

func (*ControllerInstallation) DeepCopy

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

func (*ControllerInstallation) DeepCopyInto

func (in *ControllerInstallation) DeepCopyInto(out *ControllerInstallation)

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

func (*ControllerInstallation) DeepCopyObject

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

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

type ControllerInstallationList

type ControllerInstallationList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of ControllerInstallations.
	Items []ControllerInstallation
}

ControllerInstallationList is a collection of ControllerInstallations.

func (*ControllerInstallationList) DeepCopy

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

func (*ControllerInstallationList) DeepCopyInto

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

func (*ControllerInstallationList) DeepCopyObject

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

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

type ControllerInstallationSpec

type ControllerInstallationSpec struct {
	// RegistrationRef is used to reference a ControllerRegistration resource.
	// The name field of the RegistrationRef is immutable.
	RegistrationRef corev1.ObjectReference
	// SeedRef is used to reference a Seed resource. The name field of the SeedRef is immutable.
	SeedRef corev1.ObjectReference
	// DeploymentRef is used to reference a ControllerDeployment resource.
	DeploymentRef *corev1.ObjectReference
}

ControllerInstallationSpec is the specification of a ControllerInstallation.

func (*ControllerInstallationSpec) DeepCopy

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

func (*ControllerInstallationSpec) DeepCopyInto

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

type ControllerInstallationStatus

type ControllerInstallationStatus struct {
	// Conditions represents the latest available observations of a ControllerInstallations's current state.
	Conditions []Condition
	// ProviderStatus contains type-specific status.
	// +optional
	ProviderStatus *runtime.RawExtension
}

ControllerInstallationStatus is the status of a ControllerInstallation.

func (*ControllerInstallationStatus) DeepCopy

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

func (*ControllerInstallationStatus) DeepCopyInto

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

type ControllerRegistration

type ControllerRegistration struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec contains the specification of this registration.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ControllerRegistrationSpec
}

ControllerRegistration represents a registration of an external controller.

func (*ControllerRegistration) DeepCopy

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

func (*ControllerRegistration) DeepCopyInto

func (in *ControllerRegistration) DeepCopyInto(out *ControllerRegistration)

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

func (*ControllerRegistration) DeepCopyObject

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

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

type ControllerRegistrationDeployment

type ControllerRegistrationDeployment struct {
	// Policy controls how the controller is deployed. It defaults to 'OnDemand'.
	Policy *ControllerDeploymentPolicy
	// SeedSelector contains an optional label selector for seeds. Only if the labels match then this controller will be
	// considered for a deployment.
	// An empty list means that all seeds are selected.
	SeedSelector *metav1.LabelSelector
	// DeploymentRefs holds references to `ControllerDeployments`. Only one element is supported currently.
	DeploymentRefs []DeploymentRef
}

ControllerRegistrationDeployment contains information for how this controller is deployed.

func (*ControllerRegistrationDeployment) DeepCopy

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

func (*ControllerRegistrationDeployment) DeepCopyInto

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

type ControllerRegistrationList

type ControllerRegistrationList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of ControllerRegistrations.
	Items []ControllerRegistration
}

ControllerRegistrationList is a collection of ControllerRegistrations.

func (*ControllerRegistrationList) DeepCopy

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

func (*ControllerRegistrationList) DeepCopyInto

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

func (*ControllerRegistrationList) DeepCopyObject

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

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

type ControllerRegistrationSpec

type ControllerRegistrationSpec struct {
	// Resources is a list of combinations of kinds (Infrastructure, Generic, ...) and their actual types
	// (aws-route53, gcp, auditlog, ...).
	Resources []ControllerResource
	// Deployment contains information for how this controller is deployed.
	Deployment *ControllerRegistrationDeployment
}

ControllerRegistrationSpec is the specification of a ControllerRegistration.

func (*ControllerRegistrationSpec) DeepCopy

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

func (*ControllerRegistrationSpec) DeepCopyInto

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

type ControllerResource

type ControllerResource struct {
	// Kind is the resource kind.
	Kind string
	// Type is the resource type.
	Type string
	// GloballyEnabled determines if this resource is required by all Shoot clusters.
	// This field is defaulted to false when kind is "Extension".
	GloballyEnabled *bool
	// ReconcileTimeout defines how long Gardener should wait for the resource reconciliation.
	// This field is defaulted to 3m0s when kind is "Extension".
	ReconcileTimeout *metav1.Duration
	// Primary determines if the controller backed by this ControllerRegistration is responsible for the extension
	// resource's lifecycle. This field defaults to true. There must be exactly one primary controller for this kind/type
	// combination. This field is immutable.
	Primary *bool
	// Lifecycle defines a strategy that determines when different operations on a ControllerResource should be performed.
	// This field is defaulted in the following way when kind is "Extension".
	//  Reconcile: "AfterKubeAPIServer"
	//  Delete: "BeforeKubeAPIServer"
	//  Migrate: "BeforeKubeAPIServer"
	Lifecycle *ControllerResourceLifecycle
	// WorkerlessSupported specifies whether this ControllerResource supports Workerless Shoot clusters.
	// This field is only relevant when kind is "Extension".
	WorkerlessSupported *bool
}

ControllerResource is a combination of a kind (Infrastructure, Generic, ...) and the actual type for this kind (aws-route53, gcp, auditlog, ...).

func (*ControllerResource) DeepCopy

func (in *ControllerResource) DeepCopy() *ControllerResource

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

func (*ControllerResource) DeepCopyInto

func (in *ControllerResource) DeepCopyInto(out *ControllerResource)

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

type ControllerResourceLifecycle

type ControllerResourceLifecycle struct {
	// Reconcile defines the strategy during reconciliation.
	Reconcile *ControllerResourceLifecycleStrategy
	// Delete defines the strategy during deletion.
	Delete *ControllerResourceLifecycleStrategy
	// Migrate defines the strategy during migration.
	Migrate *ControllerResourceLifecycleStrategy
}

ControllerResourceLifecycle defines the lifecycle of a controller resource.

func (*ControllerResourceLifecycle) DeepCopy

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

func (*ControllerResourceLifecycle) DeepCopyInto

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

type ControllerResourceLifecycleStrategy

type ControllerResourceLifecycleStrategy string

ControllerResourceLifecycleStrategy is a string alias.

const (
	// BeforeKubeAPIServer specifies that a resource should be handled before the kube-apiserver.
	BeforeKubeAPIServer ControllerResourceLifecycleStrategy = "BeforeKubeAPIServer"
	// AfterKubeAPIServer specifies that a resource should be handled after the kube-apiserver.
	AfterKubeAPIServer ControllerResourceLifecycleStrategy = "AfterKubeAPIServer"
	// AfterWorker specifies that a resource should be handled after workers. This is only available during reconcile.
	AfterWorker ControllerResourceLifecycleStrategy = "AfterWorker"
)

type CoreDNS

type CoreDNS struct {
	// Autoscaling contains the settings related to autoscaling of the Core DNS components running in the data plane of the Shoot cluster.
	Autoscaling *CoreDNSAutoscaling
	// Rewriting contains the setting related to rewriting of requests, which are obviously incorrect due to the unnecessary application of the search path.
	Rewriting *CoreDNSRewriting
}

CoreDNS contains the settings of the Core DNS components running in the data plane of the Shoot cluster.

func (*CoreDNS) DeepCopy

func (in *CoreDNS) DeepCopy() *CoreDNS

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

func (*CoreDNS) DeepCopyInto

func (in *CoreDNS) DeepCopyInto(out *CoreDNS)

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

type CoreDNSAutoscaling

type CoreDNSAutoscaling struct {
	// The mode of the autoscaling to be used for the Core DNS components running in the data plane of the Shoot cluster.
	// Supported values are `horizontal` and `cluster-proportional`.
	Mode CoreDNSAutoscalingMode
}

CoreDNSAutoscaling contains the settings related to autoscaling of the Core DNS components running in the data plane of the Shoot cluster.

func (*CoreDNSAutoscaling) DeepCopy

func (in *CoreDNSAutoscaling) DeepCopy() *CoreDNSAutoscaling

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

func (*CoreDNSAutoscaling) DeepCopyInto

func (in *CoreDNSAutoscaling) DeepCopyInto(out *CoreDNSAutoscaling)

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

type CoreDNSAutoscalingMode

type CoreDNSAutoscalingMode string

CoreDNSAutoscalingMode is a type alias for the Core DNS autoscaling mode string.

const (
	// CoreDNSAutoscalingModeHorizontal is a constant for horizontal Core DNS autoscaling mode.
	CoreDNSAutoscalingModeHorizontal CoreDNSAutoscalingMode = "horizontal"
	// CoreDNSAutoscalingModeClusterProportional is a constant for cluster-proportional Core DNS autoscaling mode.
	CoreDNSAutoscalingModeClusterProportional CoreDNSAutoscalingMode = "cluster-proportional"
)

type CoreDNSRewriting

type CoreDNSRewriting struct {
	// CommonSuffixes are expected to be the suffix of a fully qualified domain name. Each suffix should contain at least one or two dots ('.') to prevent accidental clashes.
	CommonSuffixes []string
}

CoreDNSRewriting contains the setting related to rewriting requests, which are obviously incorrect due to the unnecessary application of the search path.

func (*CoreDNSRewriting) DeepCopy

func (in *CoreDNSRewriting) DeepCopy() *CoreDNSRewriting

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

func (*CoreDNSRewriting) DeepCopyInto

func (in *CoreDNSRewriting) DeepCopyInto(out *CoreDNSRewriting)

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

type CredentialsRotationPhase

type CredentialsRotationPhase string

CredentialsRotationPhase is a string alias.

const (
	// RotationPreparing is a constant for the credentials rotation phase describing that the procedure is being prepared.
	RotationPreparing CredentialsRotationPhase = "Preparing"
	// RotationPrepared is a constant for the credentials rotation phase describing that the procedure was prepared.
	RotationPrepared CredentialsRotationPhase = "Prepared"
	// RotationCompleting is a constant for the credentials rotation phase describing that the procedure is being
	// completed.
	RotationCompleting CredentialsRotationPhase = "Completing"
	// RotationCompleted is a constant for the credentials rotation phase describing that the procedure was completed.
	RotationCompleted CredentialsRotationPhase = "Completed"
)

type DNS

type DNS struct {
	// Domain is the external available domain of the Shoot cluster. This domain will be written into the
	// kubeconfig that is handed out to end-users. This field is immutable.
	Domain *string
	// Providers is a list of DNS providers that shall be enabled for this shoot cluster. Only relevant if
	// not a default domain is used.
	//
	// Deprecated: Configuring multiple DNS providers is deprecated and will be forbidden in a future release.
	// Please use the DNS extension provider config (e.g. shoot-dns-service) for additional providers.
	Providers []DNSProvider
}

DNS holds information about the provider, the hosted zone id and the domain.

func (*DNS) DeepCopy

func (in *DNS) DeepCopy() *DNS

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

func (*DNS) DeepCopyInto

func (in *DNS) DeepCopyInto(out *DNS)

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

type DNSIncludeExclude

type DNSIncludeExclude struct {
	// Include is a list of domains that shall be included.
	Include []string
	// Exclude is a list of domains that shall be excluded.
	Exclude []string
}

DNSIncludeExclude contains information about which domains shall be included/excluded.

func (*DNSIncludeExclude) DeepCopy

func (in *DNSIncludeExclude) DeepCopy() *DNSIncludeExclude

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

func (*DNSIncludeExclude) DeepCopyInto

func (in *DNSIncludeExclude) DeepCopyInto(out *DNSIncludeExclude)

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

type DNSProvider

type DNSProvider struct {
	// Domains contains information about which domains shall be included/excluded for this provider.
	//
	// Deprecated: This field is deprecated and will be removed in a future release.
	// Please use the DNS extension provider config (e.g. shoot-dns-service) for additional configuration.
	Domains *DNSIncludeExclude
	// Primary indicates that this DNSProvider is used for shoot related domains.
	//
	// Deprecated: This field is deprecated and will be removed in a future release.
	// Please use the DNS extension provider config (e.g. shoot-dns-service) for additional and non-primary providers.
	Primary *bool
	// SecretName is a name of a secret containing credentials for the stated domain and the
	// provider. When not specified, the Gardener will use the cloud provider credentials referenced
	// by the Shoot and try to find respective credentials there. Specifying this field may override
	// this behavior, i.e. forcing the Gardener to only look into the given secret.
	SecretName *string
	// Type is the DNS provider type for the Shoot. Only relevant if not the default domain is used for
	// this shoot.
	Type *string
	// Zones contains information about which hosted zones shall be included/excluded for this provider.
	//
	// Deprecated: This field is deprecated and will be removed in a future release.
	// Please use the DNS extension provider config (e.g. shoot-dns-service) for additional configuration.
	Zones *DNSIncludeExclude
}

DNSProvider contains information about a DNS provider.

func (*DNSProvider) DeepCopy

func (in *DNSProvider) DeepCopy() *DNSProvider

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

func (*DNSProvider) DeepCopyInto

func (in *DNSProvider) DeepCopyInto(out *DNSProvider)

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

type DataVolume

type DataVolume struct {
	// Name of the volume to make it referenceable.
	Name string
	// Type is the type of the volume.
	Type *string
	// VolumeSize is the size of the volume.
	VolumeSize string
	// Encrypted determines if the volume should be encrypted.
	Encrypted *bool
}

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 DeploymentRef

type DeploymentRef struct {
	// Name is the name of the `ControllerDeployment` that is being referred to.
	Name string
}

DeploymentRef contains information about `ControllerDeployment` references.

func (*DeploymentRef) DeepCopy

func (in *DeploymentRef) DeepCopy() *DeploymentRef

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

func (*DeploymentRef) DeepCopyInto

func (in *DeploymentRef) DeepCopyInto(out *DeploymentRef)

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

type DualApprovalForDeletion

type DualApprovalForDeletion struct {
	// Resource is the name of the resource this applies to.
	Resource string
	// Selector is the label selector for the resources.
	Selector metav1.LabelSelector
	// IncludeServiceAccounts specifies whether the concept also applies when deletion is triggered by ServiceAccounts.
	IncludeServiceAccounts *bool
}

DualApprovalForDeletion contains configuration for the dual approval concept for resource deletion.

func (*DualApprovalForDeletion) DeepCopy

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

func (*DualApprovalForDeletion) DeepCopyInto

func (in *DualApprovalForDeletion) DeepCopyInto(out *DualApprovalForDeletion)

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

type ETCDEncryptionKeyRotation

type ETCDEncryptionKeyRotation struct {
	// Phase describes the phase of the ETCD encryption key credential rotation.
	Phase CredentialsRotationPhase
	// LastCompletionTime is the most recent time when the ETCD encryption key credential rotation was successfully
	// completed.
	LastCompletionTime *metav1.Time
	// LastInitiationTime is the most recent time when the ETCD encryption key credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastInitiationFinishedTime is the recent time when the ETCD encryption key credential rotation initiation was
	// completed.
	LastInitiationFinishedTime *metav1.Time
	// LastCompletionTriggeredTime is the recent time when the ETCD encryption key credential rotation completion was
	// triggered.
	LastCompletionTriggeredTime *metav1.Time
}

ETCDEncryptionKeyRotation contains information about the ETCD encryption key credential rotation.

func (*ETCDEncryptionKeyRotation) DeepCopy

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

func (*ETCDEncryptionKeyRotation) DeepCopyInto

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

type EncryptionConfig

type EncryptionConfig struct {
	// Resources contains the list of resources that shall be encrypted in addition to secrets.
	// Each item is a Kubernetes resource name in plural (resource or resource.group) that should be encrypted.
	// Note that configuring a custom resource is only supported for versions >= 1.26.
	// Wildcards are not supported for now.
	// See https://github.com/gardener/gardener/blob/master/docs/usage/security/etcd_encryption_config.md for more details.
	Resources []string
}

EncryptionConfig contains customizable encryption configuration of the API server.

func (*EncryptionConfig) DeepCopy

func (in *EncryptionConfig) DeepCopy() *EncryptionConfig

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

func (*EncryptionConfig) DeepCopyInto

func (in *EncryptionConfig) DeepCopyInto(out *EncryptionConfig)

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

type ErrorCode

type ErrorCode string

ErrorCode is a string alias.

const (
	// ErrorInfraUnauthenticated indicates that the last error occurred due to the client request not being completed because it lacks valid authentication credentials for the requested resource.
	// It is classified as a non-retryable error code.
	ErrorInfraUnauthenticated ErrorCode = "ERR_INFRA_UNAUTHENTICATED"
	// ErrorInfraUnauthorized indicates that the last error occurred due to the server understanding the request but refusing to authorize it.
	// It is classified as a non-retryable error code.
	ErrorInfraUnauthorized ErrorCode = "ERR_INFRA_UNAUTHORIZED"
	// ErrorInfraQuotaExceeded indicates that the last error occurred due to infrastructure quota limits.
	// It is classified as a non-retryable error code.
	ErrorInfraQuotaExceeded ErrorCode = "ERR_INFRA_QUOTA_EXCEEDED"
	// ErrorInfraRateLimitsExceeded indicates that the last error occurred due to exceeded infrastructure request rate limits.
	ErrorInfraRateLimitsExceeded ErrorCode = "ERR_INFRA_RATE_LIMITS_EXCEEDED"
	// ErrorInfraDependencies indicates that the last error occurred due to dependent objects on the infrastructure level.
	// It is classified as a non-retryable error code.
	ErrorInfraDependencies ErrorCode = "ERR_INFRA_DEPENDENCIES"
	// ErrorRetryableInfraDependencies indicates that the last error occurred due to dependent objects on the infrastructure level, but operation should be retried.
	ErrorRetryableInfraDependencies ErrorCode = "ERR_RETRYABLE_INFRA_DEPENDENCIES"
	// ErrorInfraResourcesDepleted indicates that the last error occurred due to depleted resource in the infrastructure.
	ErrorInfraResourcesDepleted ErrorCode = "ERR_INFRA_RESOURCES_DEPLETED"
	// ErrorCleanupClusterResources indicates that the last error occurred due to resources in the cluster that are stuck in deletion.
	ErrorCleanupClusterResources ErrorCode = "ERR_CLEANUP_CLUSTER_RESOURCES"
	// ErrorConfigurationProblem indicates that the last error occurred due to a configuration problem.
	// It is classified as a non-retryable error code.
	ErrorConfigurationProblem ErrorCode = "ERR_CONFIGURATION_PROBLEM"
	// ErrorRetryableConfigurationProblem indicates that the last error occurred due to a retryable configuration problem.
	ErrorRetryableConfigurationProblem ErrorCode = "ERR_RETRYABLE_CONFIGURATION_PROBLEM"
	// ErrorProblematicWebhook indicates that the last error occurred due to a webhook not following the Kubernetes
	// best practices (https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/#best-practices-and-warnings).
	// It is classified as a non-retryable error code.
	ErrorProblematicWebhook ErrorCode = "ERR_PROBLEMATIC_WEBHOOK"
)

type ExpanderMode

type ExpanderMode string

ExpanderMode is type used for Expander values

const (
	// ClusterAutoscalerExpanderLeastWaste selects the node group that will have the least idle CPU (if tied, unused memory) after scale-up.
	// This is useful when you have different classes of nodes, for example, high CPU or high memory nodes, and
	// only want to expand those when there are pending pods that need a lot of those resources.
	// This is the default value.
	ClusterAutoscalerExpanderLeastWaste ExpanderMode = "least-waste"
	// ClusterAutoscalerExpanderMostPods selects the node group that would be able to schedule the most pods when scaling up.
	// This is useful when you are using nodeSelector to make sure certain pods land on certain nodes.
	// Note that this won't cause the autoscaler to select bigger nodes vs. smaller, as it can add multiple smaller nodes at once.
	ClusterAutoscalerExpanderMostPods ExpanderMode = "most-pods"
	// ClusterAutoscalerExpanderPriority selects the node group that has the highest priority assigned by the user. For configurations,
	// See: https://github.com/gardener/autoscaler/blob/machine-controller-manager-provider/cluster-autoscaler/expander/priority/readme.md
	ClusterAutoscalerExpanderPriority ExpanderMode = "priority"
	// ClusterAutoscalerExpanderRandom should be used when you don't have a particular need
	// for the node groups to scale differently.
	ClusterAutoscalerExpanderRandom ExpanderMode = "random"
)

type ExpirableVersion

type ExpirableVersion struct {
	// Version is the version identifier.
	Version string
	// ExpirationDate defines the time at which this version expires.
	ExpirationDate *metav1.Time
	// Classification defines the state of a version (preview, supported, deprecated)
	Classification *VersionClassification
}

ExpirableVersion contains a version and an expiration date.

func (*ExpirableVersion) DeepCopy

func (in *ExpirableVersion) DeepCopy() *ExpirableVersion

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

func (*ExpirableVersion) DeepCopyInto

func (in *ExpirableVersion) DeepCopyInto(out *ExpirableVersion)

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

type ExposureClass

type ExposureClass struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Handler is the name of the handler which applies the control plane endpoint exposure strategy.
	// This field is immutable.
	Handler string
	// Scheduling holds information how to select applicable Seed's for ExposureClass usage.
	// This field is immutable.
	Scheduling *ExposureClassScheduling
}

ExposureClass represents a control plane endpoint exposure strategy.

func (*ExposureClass) DeepCopy

func (in *ExposureClass) DeepCopy() *ExposureClass

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

func (*ExposureClass) DeepCopyInto

func (in *ExposureClass) DeepCopyInto(out *ExposureClass)

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

func (*ExposureClass) DeepCopyObject

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

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

type ExposureClassList

type ExposureClassList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of ExposureClasses.
	Items []ExposureClass
}

ExposureClassList is a collection of ExposureClass.

func (*ExposureClassList) DeepCopy

func (in *ExposureClassList) DeepCopy() *ExposureClassList

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

func (*ExposureClassList) DeepCopyInto

func (in *ExposureClassList) DeepCopyInto(out *ExposureClassList)

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

func (*ExposureClassList) DeepCopyObject

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

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

type ExposureClassScheduling

type ExposureClassScheduling struct {
	// SeedSelector is an optional label selector for Seed's which are suitable to use the ExposureClass.
	SeedSelector *SeedSelector
	// Tolerations contains the tolerations for taints on Seed clusters.
	Tolerations []Toleration
}

ExposureClassScheduling holds information to select applicable Seed's for ExposureClass usage.

func (*ExposureClassScheduling) DeepCopy

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

func (*ExposureClassScheduling) DeepCopyInto

func (in *ExposureClassScheduling) DeepCopyInto(out *ExposureClassScheduling)

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

type Extension

type Extension struct {
	// Type is the type of the extension resource.
	Type string
	// ProviderConfig is the configuration passed to extension resource.
	ProviderConfig *runtime.RawExtension
	// Disabled allows to disable extensions that were marked as 'globally enabled' by Gardener administrators.
	Disabled *bool
}

Extension contains type and provider information for Shoot extensions.

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.

type ExtensionResourceState

type ExtensionResourceState struct {
	// Kind (type) of the extension custom resource
	Kind string
	// Name of the extension custom resource
	Name *string
	// Purpose of the extension custom resource
	Purpose *string
	// State of the extension resource
	State *runtime.RawExtension
	// Resources holds a list of named resource references that can be referred to in the state by their names.
	Resources []NamedResourceReference
}

ExtensionResourceState contains the kind of the extension custom resource and its last observed state in the Shoot's namespace on the Seed cluster.

func (*ExtensionResourceState) DeepCopy

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

func (*ExtensionResourceState) DeepCopyInto

func (in *ExtensionResourceState) DeepCopyInto(out *ExtensionResourceState)

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

type FailureTolerance

type FailureTolerance struct {
	// Type specifies the type of failure that the highly available resource can tolerate.
	Type FailureToleranceType
}

FailureTolerance holds information about failure tolerance configuration.

func (*FailureTolerance) DeepCopy

func (in *FailureTolerance) DeepCopy() *FailureTolerance

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

func (*FailureTolerance) DeepCopyInto

func (in *FailureTolerance) DeepCopyInto(out *FailureTolerance)

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

type FailureToleranceType

type FailureToleranceType string

FailureToleranceType is the type of failure that a highly available setup can tolerate.

const (
	// FailureToleranceTypeNode specifies that a highly available resource can tolerate the
	// failure of one or more nodes within a single-zone setup and still be available.
	FailureToleranceTypeNode FailureToleranceType = "node"
	// FailureToleranceTypeZone specifies that a highly available resource can tolerate the
	// failure of one or more zones within a multi-zone setup and still be available.
	FailureToleranceTypeZone FailureToleranceType = "zone"
)

type Gardener

type Gardener struct {
	// ID is the container id of the Gardener which last acted on a Shoot cluster.
	ID string
	// Name is the hostname (pod name) of the Gardener which last acted on a Shoot cluster.
	Name string
	// Version is the version of the Gardener which last acted on a Shoot cluster.
	Version string
}

Gardener holds the information about the Gardener.

func (*Gardener) DeepCopy

func (in *Gardener) DeepCopy() *Gardener

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

func (*Gardener) DeepCopyInto

func (in *Gardener) DeepCopyInto(out *Gardener)

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

type GardenerResourceData

type GardenerResourceData struct {
	// Name of the object required to generate resources
	Name string
	// Type of the object
	Type string
	// Data contains the payload required to generate resources
	Data runtime.RawExtension
	// Labels are labels of the object
	Labels map[string]string
}

GardenerResourceData holds the data which is used to generate resources, deployed in the Shoot's control plane.

func (*GardenerResourceData) DeepCopy

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

func (*GardenerResourceData) DeepCopyInto

func (in *GardenerResourceData) DeepCopyInto(out *GardenerResourceData)

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

type HelmControllerDeployment

type HelmControllerDeployment struct {
	// RawChart is the base64-encoded, gzip'ed, tar'ed extension controller chart.
	RawChart []byte
	// Values are the chart values.
	Values *apiextensionsv1.JSON
	// OCIRepository defines where to pull the chart.
	OCIRepository *OCIRepository
}

HelmControllerDeployment configures how an extension controller is deployed using helm.

func (*HelmControllerDeployment) DeepCopy

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

func (*HelmControllerDeployment) DeepCopyInto

func (in *HelmControllerDeployment) DeepCopyInto(out *HelmControllerDeployment)

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

type Hibernation

type Hibernation struct {
	// Enabled specifies whether the Shoot needs to be hibernated or not. If it is true, the Shoot's desired state is to be hibernated.
	// If it is false or nil, the Shoot's desired state is to be awakened.
	Enabled *bool
	// Schedules determine the hibernation schedules.
	Schedules []HibernationSchedule
}

Hibernation contains information whether the Shoot is suspended or not.

func (*Hibernation) DeepCopy

func (in *Hibernation) DeepCopy() *Hibernation

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

func (*Hibernation) DeepCopyInto

func (in *Hibernation) DeepCopyInto(out *Hibernation)

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

type HibernationSchedule

type HibernationSchedule struct {
	// Start is a Cron spec at which time a Shoot will be hibernated.
	Start *string
	// End is a Cron spec at which time a Shoot will be woken up.
	End *string
	// Location is the time location in which both start and shall be evaluated.
	Location *string
}

HibernationSchedule determines the hibernation schedule of a Shoot. A Shoot will be regularly hibernated at each start time and will be woken up at each end time. Start or End can be omitted, though at least one of each has to be specified.

func (*HibernationSchedule) DeepCopy

func (in *HibernationSchedule) DeepCopy() *HibernationSchedule

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

func (*HibernationSchedule) DeepCopyInto

func (in *HibernationSchedule) DeepCopyInto(out *HibernationSchedule)

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

type HighAvailability

type HighAvailability struct {
	// FailureTolerance specifies the failure tolerance level in a high availability setup.
	FailureTolerance FailureTolerance
}

HighAvailability specifies the configuration settings for high availability for a resource. Typical usages could be to configure HA for shoot control plane or for seed system components.

func (*HighAvailability) DeepCopy

func (in *HighAvailability) DeepCopy() *HighAvailability

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

func (*HighAvailability) DeepCopyInto

func (in *HighAvailability) DeepCopyInto(out *HighAvailability)

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

type HorizontalPodAutoscalerConfig

type HorizontalPodAutoscalerConfig struct {
	// The period after which a ready pod transition is considered to be the first.
	CPUInitializationPeriod *metav1.Duration
	// The configurable window at which the controller will choose the highest recommendation for autoscaling.
	DownscaleStabilization *metav1.Duration
	// The configurable period at which the horizontal pod autoscaler considers a Pod “not yet ready” given that it’s unready and it has  transitioned to unready during that time.
	InitialReadinessDelay *metav1.Duration
	// The period for syncing the number of pods in horizontal pod autoscaler.
	SyncPeriod *metav1.Duration
	// The minimum change (from 1.0) in the desired-to-actual metrics ratio for the horizontal pod autoscaler to consider scaling.
	Tolerance *float64
}

HorizontalPodAutoscalerConfig contains horizontal pod autoscaler configuration settings for the kube-controller-manager. Note: Descriptions were taken from the Kubernetes documentation.

func (*HorizontalPodAutoscalerConfig) DeepCopy

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

func (*HorizontalPodAutoscalerConfig) DeepCopyInto

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 Ingress

type Ingress struct {
	// Domain specifies the ingress domain of the Seed cluster pointing to the ingress controller endpoint. It will be used
	// to construct ingress URLs for system applications running in Shoot clusters. Once set this field is immutable.
	Domain string
	// Controller configures a Gardener managed Ingress Controller listening on the ingressDomain
	Controller IngressController
}

Ingress configures the Ingress specific settings of the Seed cluster

func (*Ingress) DeepCopy

func (in *Ingress) DeepCopy() *Ingress

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

func (*Ingress) DeepCopyInto

func (in *Ingress) DeepCopyInto(out *Ingress)

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

type IngressController

type IngressController struct {
	// Kind defines which kind of IngressController to use, for example `nginx`
	Kind string
	// ProviderConfig specifies infrastructure specific configuration for the ingressController
	ProviderConfig *runtime.RawExtension
}

IngressController enables a Gardener managed Ingress Controller listening on the ingressDomain

func (*IngressController) DeepCopy

func (in *IngressController) DeepCopy() *IngressController

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

func (*IngressController) DeepCopyInto

func (in *IngressController) DeepCopyInto(out *IngressController)

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

type InternalSecret

type InternalSecret struct {
	metav1.TypeMeta
	// +optional
	metav1.ObjectMeta

	// Immutable field, if set, ensures that data stored in the Secret cannot
	// be updated (only object metadata can be modified).
	// +optional
	Immutable *bool

	// Data contains the secret data. Each key must consist of alphanumeric
	// characters, '-', '_' or '.'. The serialized form of the secret data is a
	// base64 encoded string, representing the arbitrary (possibly non-string)
	// data value here.
	// +optional
	Data map[string][]byte `datapolicy:"password,security-key,token"`

	// Used to facilitate programmatic handling of secret data.
	// More info: https://kubernetes.io/docs/concepts/configuration/secret/#secret-types
	// +optional
	Type corev1.SecretType
}

InternalSecret holds secret data of a certain type. The total bytes of the values in the Data field must be less than MaxSecretSize bytes.

func (*InternalSecret) DeepCopy

func (in *InternalSecret) DeepCopy() *InternalSecret

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

func (*InternalSecret) DeepCopyInto

func (in *InternalSecret) DeepCopyInto(out *InternalSecret)

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

func (*InternalSecret) DeepCopyObject

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

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

type InternalSecretList

type InternalSecretList struct {
	metav1.TypeMeta
	// +optional
	metav1.ListMeta

	Items []InternalSecret
}

InternalSecretList represents the list of secrets

func (*InternalSecretList) DeepCopy

func (in *InternalSecretList) DeepCopy() *InternalSecretList

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

func (*InternalSecretList) DeepCopyInto

func (in *InternalSecretList) DeepCopyInto(out *InternalSecretList)

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

func (*InternalSecretList) DeepCopyObject

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

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

type KubeAPIServerConfig

type KubeAPIServerConfig struct {
	KubernetesConfig
	// AdmissionPlugins contains the list of user-defined admission plugins (additional to those managed by Gardener), and, if desired, the corresponding
	// configuration.
	AdmissionPlugins []AdmissionPlugin
	// APIAudiences are the identifiers of the API. The service account token authenticator will
	// validate that tokens used against the API are bound to at least one of these audiences.
	// Defaults to ["kubernetes"].
	APIAudiences []string
	// AuditConfig contains configuration settings for the audit of the kube-apiserver.
	AuditConfig *AuditConfig
	// OIDCConfig contains configuration settings for the OIDC provider.
	//
	// Deprecated: This field is deprecated and will be forbidden starting from Kubernetes 1.32.
	// Please configure and use structured authentication instead of oidc flags.
	// For more information check https://github.com/gardener/gardener/issues/9858
	// TODO(AleksandarSavchev): Drop this field after support for Kubernetes 1.31 is dropped.
	OIDCConfig *OIDCConfig
	// RuntimeConfig contains information about enabled or disabled APIs.
	RuntimeConfig map[string]bool
	// ServiceAccountConfig contains configuration settings for the service account handling
	// of the kube-apiserver.
	ServiceAccountConfig *ServiceAccountConfig
	// WatchCacheSizes contains configuration of the API server's watch cache sizes.
	// Configuring these flags might be useful for large-scale Shoot clusters with a lot of parallel update requests
	// and a lot of watching controllers (e.g. large ManagedSeed clusters). When the API server's watch cache's
	// capacity is too small to cope with the amount of update requests and watchers for a particular resource, it
	// might happen that controller watches are permanently stopped with `too old resource version` errors.
	// Starting from kubernetes v1.19, the API server's watch cache size is adapted dynamically and setting the watch
	// cache size flags will have no effect, except when setting it to 0 (which disables the watch cache).
	WatchCacheSizes *WatchCacheSizes
	// Requests contains configuration for request-specific settings for the kube-apiserver.
	Requests *APIServerRequests
	// EnableAnonymousAuthentication defines whether anonymous requests to the secure port
	// of the API server should be allowed (flag `--anonymous-auth`).
	// See: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/
	EnableAnonymousAuthentication *bool
	// EventTTL controls the amount of time to retain events.
	EventTTL *metav1.Duration
	// Logging contains configuration settings for the log verbosity and access logging
	Logging *APIServerLogging
	// DefaultNotReadyTolerationSeconds indicates the tolerationSeconds of the toleration for notReady:NoExecute
	// that is added by default to every pod that does not already have such a toleration (flag `--default-not-ready-toleration-seconds`).
	// The field has effect only when the `DefaultTolerationSeconds` admission plugin is enabled.
	DefaultNotReadyTolerationSeconds *int64
	// DefaultUnreachableTolerationSeconds indicates the tolerationSeconds of the toleration for unreachable:NoExecute
	// that is added by default to every pod that does not already have such a toleration (flag `--default-unreachable-toleration-seconds`).
	// The field has effect only when the `DefaultTolerationSeconds` admission plugin is enabled.
	DefaultUnreachableTolerationSeconds *int64
	// EncryptionConfig contains customizable encryption configuration of the API server.
	EncryptionConfig *EncryptionConfig
	// StructuredAuthentication contains configuration settings for structured authentication for the kube-apiserver.
	StructuredAuthentication *StructuredAuthentication
	// StructuredAuthorization contains configuration settings for structured authorization for the kube-apiserver.
	StructuredAuthorization *StructuredAuthorization
}

KubeAPIServerConfig contains configuration settings for the kube-apiserver.

func (*KubeAPIServerConfig) DeepCopy

func (in *KubeAPIServerConfig) DeepCopy() *KubeAPIServerConfig

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

func (*KubeAPIServerConfig) DeepCopyInto

func (in *KubeAPIServerConfig) DeepCopyInto(out *KubeAPIServerConfig)

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

type KubeControllerManagerConfig

type KubeControllerManagerConfig struct {
	KubernetesConfig
	// HorizontalPodAutoscalerConfig contains horizontal pod autoscaler configuration settings for the kube-controller-manager.
	HorizontalPodAutoscalerConfig *HorizontalPodAutoscalerConfig
	// NodeCIDRMaskSize defines the mask size for node cidr in cluster (default is 24). This field is immutable.
	NodeCIDRMaskSize *int32
	// PodEvictionTimeout defines the grace period for deleting pods on failed nodes.
	//
	// Deprecated: The corresponding kube-controller-manager flag `--pod-eviction-timeout` is deprecated
	// in favor of the kube-apiserver flags `--default-not-ready-toleration-seconds` and `--default-unreachable-toleration-seconds`.
	// The `--pod-eviction-timeout` flag does not have effect when the taint based eviction is enabled. The taint
	// based eviction is beta (enabled by default) since Kubernetes 1.13 and GA since Kubernetes 1.18. Hence,
	// instead of setting this field, set the `spec.kubernetes.kubeAPIServer.defaultNotReadyTolerationSeconds` and
	// `spec.kubernetes.kubeAPIServer.defaultUnreachableTolerationSeconds`.
	PodEvictionTimeout *metav1.Duration
	// NodeMonitorGracePeriod defines the grace period before an unresponsive node is marked unhealthy.
	NodeMonitorGracePeriod *metav1.Duration
}

KubeControllerManagerConfig contains configuration settings for the kube-controller-manager.

func (*KubeControllerManagerConfig) DeepCopy

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

func (*KubeControllerManagerConfig) DeepCopyInto

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

type KubeProxyConfig

type KubeProxyConfig struct {
	KubernetesConfig
	// Mode specifies which proxy mode to use.
	// defaults to IPTables.
	Mode *ProxyMode
	// Enabled indicates whether kube-proxy should be deployed or not.
	// Depending on the networking extensions switching kube-proxy off might be rejected. Consulting the respective documentation of the used networking extension is recommended before using this field.
	// defaults to true if not specified.
	Enabled *bool
}

KubeProxyConfig contains configuration settings for the kube-proxy.

func (*KubeProxyConfig) DeepCopy

func (in *KubeProxyConfig) DeepCopy() *KubeProxyConfig

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

func (*KubeProxyConfig) DeepCopyInto

func (in *KubeProxyConfig) DeepCopyInto(out *KubeProxyConfig)

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

type KubeSchedulerConfig

type KubeSchedulerConfig struct {
	KubernetesConfig
	// KubeMaxPDVols allows to configure the `KUBE_MAX_PD_VOLS` environment variable for the kube-scheduler.
	// Please find more information here: https://kubernetes.io/docs/concepts/storage/storage-limits/#custom-limits
	// Note that using this field is considered alpha-/experimental-level and is on your own risk. You should be aware
	// of all the side-effects and consequences when changing it.
	KubeMaxPDVols *string
	// Profile configures the scheduling profile for the cluster.
	// If not specified, the used profile is "balanced" (provides the default kube-scheduler behavior).
	Profile *SchedulingProfile
}

KubeSchedulerConfig contains configuration settings for the kube-scheduler.

func (*KubeSchedulerConfig) DeepCopy

func (in *KubeSchedulerConfig) DeepCopy() *KubeSchedulerConfig

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

func (*KubeSchedulerConfig) DeepCopyInto

func (in *KubeSchedulerConfig) DeepCopyInto(out *KubeSchedulerConfig)

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

type KubeletConfig

type KubeletConfig struct {
	KubernetesConfig
	// ContainerLogMaxSize defines the maximum size of the container log file before it is rotated. For example: "5Mi" or "256Ki".
	ContainerLogMaxSize *resource.Quantity
	// ContainerLogMaxFiles is the maximum number of container log files that can be present for a container.
	ContainerLogMaxFiles *int32
	// CPUCFSQuota allows you to disable/enable CPU throttling for Pods.
	CPUCFSQuota *bool
	// CPUManagerPolicy allows to set alternative CPU management policies (default: none).
	CPUManagerPolicy *string
	// EvictionHard describes a set of eviction thresholds (e.g. memory.available<1Gi) that if met would trigger a Pod eviction.
	// Default:
	//   memory.available:   "100Mi/1Gi/5%"
	//   nodefs.available:   "5%"
	//   nodefs.inodesFree:  "5%"
	//   imagefs.available:  "5%"
	//   imagefs.inodesFree: "5%"
	EvictionHard *KubeletConfigEviction
	// EvictionMaxPodGracePeriod describes the maximum allowed grace period (in seconds) to use when terminating pods in response to a soft eviction threshold being met.
	// Default: 90
	EvictionMaxPodGracePeriod *int32
	// EvictionMinimumReclaim configures the amount of resources below the configured eviction threshold that the kubelet attempts to reclaim whenever the kubelet observes resource pressure.
	// Default: 0 for each resource
	EvictionMinimumReclaim *KubeletConfigEvictionMinimumReclaim
	// EvictionPressureTransitionPeriod is the duration for which the kubelet has to wait before transitioning out of an eviction pressure condition.
	// Default: 4m0s
	EvictionPressureTransitionPeriod *metav1.Duration
	// EvictionSoft describes a set of eviction thresholds (e.g. memory.available<1.5Gi) that if met over a corresponding grace period would trigger a Pod eviction.
	// Default:
	//   memory.available:   "200Mi/1.5Gi/10%"
	//   nodefs.available:   "10%"
	//   nodefs.inodesFree:  "10%"
	//   imagefs.available:  "10%"
	//   imagefs.inodesFree: "10%"
	EvictionSoft *KubeletConfigEviction
	// EvictionSoftGracePeriod describes a set of eviction grace periods (e.g. memory.available=1m30s) that correspond to how long a soft eviction threshold must hold before triggering a Pod eviction.
	// Default:
	//   memory.available:   1m30s
	//   nodefs.available:   1m30s
	//   nodefs.inodesFree:  1m30s
	//   imagefs.available:  1m30s
	//   imagefs.inodesFree: 1m30s
	EvictionSoftGracePeriod *KubeletConfigEvictionSoftGracePeriod
	// MaxPods is the maximum number of Pods that are allowed by the Kubelet.
	// Default: 110
	MaxPods *int32
	// PodPIDsLimit is the maximum number of process IDs per pod allowed by the kubelet.
	PodPIDsLimit *int64
	// FailSwapOn makes the Kubelet fail to start if swap is enabled on the node. (default true).
	FailSwapOn *bool
	// KubeReserved is the configuration for resources reserved for kubernetes node components (mainly kubelet and container runtime).
	// When updating these values, be aware that cgroup resizes may not succeed on active worker nodes. Look for the NodeAllocatableEnforced event to determine if the configuration was applied.
	// Default: cpu=80m,memory=1Gi,pid=20k
	KubeReserved *KubeletConfigReserved
	// SystemReserved is the configuration for resources reserved for system processes not managed by kubernetes (e.g. journald).
	// When updating these values, be aware that cgroup resizes may not succeed on active worker nodes. Look for the NodeAllocatableEnforced event to determine if the configuration was applied.
	//
	// Deprecated: Separately configuring resource reservations for system processes is deprecated in Gardener and will be forbidden starting from Kubernetes 1.31.
	// Please merge existing resource reservations into the kubeReserved field.
	// TODO(MichaelEischer): Drop this field after support for Kubernetes 1.30 is dropped.
	SystemReserved *KubeletConfigReserved
	// ImageGCHighThresholdPercent describes the percent of the disk usage which triggers image garbage collection.
	ImageGCHighThresholdPercent *int32
	// ImageGCLowThresholdPercent describes the percent of the disk to which garbage collection attempts to free.
	ImageGCLowThresholdPercent *int32
	// SerializeImagePulls describes whether the images are pulled one at a time.
	SerializeImagePulls *bool
	// RegistryPullQPS is the limit of registry pulls per second. The value must not be a negative number.
	// Setting it to 0 means no limit.
	RegistryPullQPS *int32
	// RegistryBurst is the maximum size of bursty pulls, temporarily allows pulls to burst to this number,
	// while still not exceeding registryPullQPS. The value must not be a negative number.
	// Only used if registryPullQPS is greater than 0.
	RegistryBurst *int32
	// SeccompDefault enables the use of `RuntimeDefault` as the default seccomp profile for all workloads.
	// This requires the corresponding SeccompDefault feature gate to be enabled as well.
	// This field is only available for Kubernetes v1.25 or later.
	SeccompDefault *bool
	// ProtectKernelDefaults ensures that the kernel tunables are equal to the kubelet defaults.
	// Defaults to true for Kubernetes v1.26 or later.
	ProtectKernelDefaults *bool
	// StreamingConnectionIdleTimeout is the maximum time a streaming connection can be idle before the connection is automatically closed.
	// This field cannot be set lower than "30s" or greater than "4h".
	// Default:
	//  "4h" for Kubernetes < v1.26.
	//  "5m" for Kubernetes >= v1.26.
	StreamingConnectionIdleTimeout *metav1.Duration
	// MemorySwap configures swap memory available to container workloads.
	MemorySwap *MemorySwapConfiguration
}

KubeletConfig contains configuration settings for the kubelet.

func (*KubeletConfig) DeepCopy

func (in *KubeletConfig) DeepCopy() *KubeletConfig

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

func (*KubeletConfig) DeepCopyInto

func (in *KubeletConfig) DeepCopyInto(out *KubeletConfig)

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

type KubeletConfigEviction

type KubeletConfigEviction struct {
	// MemoryAvailable is the threshold for the free memory on the host server.
	MemoryAvailable *string
	// ImageFSAvailable is the threshold for the free disk space in the imagefs filesystem (docker images and container writable layers).
	ImageFSAvailable *string
	// ImageFSInodesFree is the threshold for the available inodes in the imagefs filesystem.
	ImageFSInodesFree *string
	// NodeFSAvailable is the threshold for the free disk space in the nodefs filesystem (docker volumes, logs, etc).
	NodeFSAvailable *string
	// NodeFSInodesFree is the threshold for the available inodes in the nodefs filesystem.
	NodeFSInodesFree *string
}

KubeletConfigEviction contains kubelet eviction thresholds supporting either a resource.Quantity or a percentage based value.

func (*KubeletConfigEviction) DeepCopy

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

func (*KubeletConfigEviction) DeepCopyInto

func (in *KubeletConfigEviction) DeepCopyInto(out *KubeletConfigEviction)

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

type KubeletConfigEvictionMinimumReclaim

type KubeletConfigEvictionMinimumReclaim struct {
	// MemoryAvailable is the threshold for the memory reclaim on the host server.
	MemoryAvailable *resource.Quantity
	// ImageFSAvailable is the threshold for the disk space reclaim in the imagefs filesystem (docker images and container writable layers).
	ImageFSAvailable *resource.Quantity
	// ImageFSInodesFree is the threshold for the inodes reclaim in the imagefs filesystem.
	ImageFSInodesFree *resource.Quantity
	// NodeFSAvailable is the threshold for the disk space reclaim in the nodefs filesystem (docker volumes, logs, etc).
	NodeFSAvailable *resource.Quantity
	// NodeFSInodesFree is the threshold for the inodes reclaim in the nodefs filesystem.
	NodeFSInodesFree *resource.Quantity
}

KubeletConfigEvictionMinimumReclaim contains configuration for the kubelet eviction minimum reclaim.

func (*KubeletConfigEvictionMinimumReclaim) DeepCopy

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

func (*KubeletConfigEvictionMinimumReclaim) DeepCopyInto

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

type KubeletConfigEvictionSoftGracePeriod

type KubeletConfigEvictionSoftGracePeriod struct {
	// MemoryAvailable is the grace period for the MemoryAvailable eviction threshold.
	MemoryAvailable *metav1.Duration
	// ImageFSAvailable is the grace period for the ImageFSAvailable eviction threshold.
	ImageFSAvailable *metav1.Duration
	// ImageFSInodesFree is the grace period for the ImageFSInodesFree eviction threshold.
	ImageFSInodesFree *metav1.Duration
	// NodeFSAvailable is the grace period for the NodeFSAvailable eviction threshold.
	NodeFSAvailable *metav1.Duration
	// NodeFSInodesFree is the grace period for the NodeFSInodesFree eviction threshold.
	NodeFSInodesFree *metav1.Duration
}

KubeletConfigEvictionSoftGracePeriod contains grace periods for kubelet eviction thresholds.

func (*KubeletConfigEvictionSoftGracePeriod) DeepCopy

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

func (*KubeletConfigEvictionSoftGracePeriod) DeepCopyInto

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

type KubeletConfigReserved

type KubeletConfigReserved struct {
	// CPU is the reserved cpu.
	CPU *resource.Quantity
	// Memory is the reserved memory.
	Memory *resource.Quantity
	// EphemeralStorage is the reserved ephemeral-storage.
	EphemeralStorage *resource.Quantity
	// PID is the reserved process-ids.
	PID *resource.Quantity
}

KubeletConfigReserved contains reserved resources for daemons

func (*KubeletConfigReserved) DeepCopy

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

func (*KubeletConfigReserved) DeepCopyInto

func (in *KubeletConfigReserved) DeepCopyInto(out *KubeletConfigReserved)

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

type Kubernetes

type Kubernetes struct {
	// ClusterAutoscaler contains the configuration flags for the Kubernetes cluster autoscaler.
	ClusterAutoscaler *ClusterAutoscaler
	// KubeAPIServer contains configuration settings for the kube-apiserver.
	KubeAPIServer *KubeAPIServerConfig
	// KubeControllerManager contains configuration settings for the kube-controller-manager.
	KubeControllerManager *KubeControllerManagerConfig
	// KubeScheduler contains configuration settings for the kube-scheduler.
	KubeScheduler *KubeSchedulerConfig
	// KubeProxy contains configuration settings for the kube-proxy.
	KubeProxy *KubeProxyConfig
	// Kubelet contains configuration settings for the kubelet.
	Kubelet *KubeletConfig

	// Version is the semantic Kubernetes version to use for the Shoot cluster.
	// Defaults to the highest supported minor and patch version given in the referenced cloud profile.
	// The version can be omitted completely or partially specified, e.g. `<major>.<minor>`.
	Version string
	// VerticalPodAutoscaler contains the configuration flags for the Kubernetes vertical pod autoscaler.
	VerticalPodAutoscaler *VerticalPodAutoscaler
	// EnableStaticTokenKubeconfig indicates whether static token kubeconfig secret will be created for the Shoot cluster.
	// Defaults to true for Shoots with Kubernetes versions < 1.26. Defaults to false for Shoots with Kubernetes versions >= 1.26.
	// Starting Kubernetes 1.27 the field will be locked to false.
	EnableStaticTokenKubeconfig *bool
}

Kubernetes contains the version and configuration variables for the Shoot control plane.

func (*Kubernetes) DeepCopy

func (in *Kubernetes) DeepCopy() *Kubernetes

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

func (*Kubernetes) DeepCopyInto

func (in *Kubernetes) DeepCopyInto(out *Kubernetes)

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

type KubernetesConfig

type KubernetesConfig struct {
	// FeatureGates contains information about enabled feature gates.
	FeatureGates map[string]bool
}

KubernetesConfig contains common configuration fields for the control plane components.

func (*KubernetesConfig) DeepCopy

func (in *KubernetesConfig) DeepCopy() *KubernetesConfig

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

func (*KubernetesConfig) DeepCopyInto

func (in *KubernetesConfig) DeepCopyInto(out *KubernetesConfig)

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

type KubernetesDashboard

type KubernetesDashboard struct {
	Addon
	// AuthenticationMode defines the authentication mode for the kubernetes-dashboard.
	AuthenticationMode *string
}

KubernetesDashboard describes configuration values for the kubernetes-dashboard addon.

func (*KubernetesDashboard) DeepCopy

func (in *KubernetesDashboard) DeepCopy() *KubernetesDashboard

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

func (*KubernetesDashboard) DeepCopyInto

func (in *KubernetesDashboard) DeepCopyInto(out *KubernetesDashboard)

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

type KubernetesSettings

type KubernetesSettings struct {
	// Versions is the list of allowed Kubernetes versions with optional expiration dates for Shoot clusters.
	Versions []ExpirableVersion
}

KubernetesSettings contains constraints regarding allowed values of the 'kubernetes' block in the Shoot specification.

func (*KubernetesSettings) DeepCopy

func (in *KubernetesSettings) DeepCopy() *KubernetesSettings

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

func (*KubernetesSettings) DeepCopyInto

func (in *KubernetesSettings) DeepCopyInto(out *KubernetesSettings)

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

type LastError

type LastError struct {
	// A human readable message indicating details about the last error.
	Description string
	// ID of the task which caused this last error
	TaskID *string
	// Well-defined error codes of the last error(s).
	// +optional
	Codes []ErrorCode
	// Last time the error was reported
	LastUpdateTime *metav1.Time
}

LastError indicates the last occurred error for an operation on a resource.

func (*LastError) DeepCopy

func (in *LastError) DeepCopy() *LastError

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

func (*LastError) DeepCopyInto

func (in *LastError) DeepCopyInto(out *LastError)

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

type LastMaintenance

type LastMaintenance struct {
	// A human-readable message containing details about the operations performed in the last maintenance.
	Description string
	// TriggeredTime is the time when maintenance was triggered.
	TriggeredTime metav1.Time
	// Status of the last maintenance operation, one of Processing, Succeeded, Error.
	State LastOperationState
	// FailureReason holds the information about the last maintenance operation failure reason.
	FailureReason *string
}

LastMaintenance holds information about a maintenance operation on the Shoot.

func (*LastMaintenance) DeepCopy

func (in *LastMaintenance) DeepCopy() *LastMaintenance

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

func (*LastMaintenance) DeepCopyInto

func (in *LastMaintenance) DeepCopyInto(out *LastMaintenance)

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

type LastOperation

type LastOperation struct {
	// A human readable message indicating details about the last operation.
	Description string
	// Last time the operation state transitioned from one to another.
	LastUpdateTime metav1.Time
	// The progress in percentage (0-100) of the last operation.
	Progress int32
	// Status of the last operation, one of Aborted, Processing, Succeeded, Error, Failed.
	State LastOperationState
	// Type of the last operation, one of Create, Reconcile, Delete, Migrate, Restore.
	Type LastOperationType
}

LastOperation indicates the type and the state of the last operation, along with a description message and a progress indicator.

func (*LastOperation) DeepCopy

func (in *LastOperation) DeepCopy() *LastOperation

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

func (*LastOperation) DeepCopyInto

func (in *LastOperation) DeepCopyInto(out *LastOperation)

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

type LastOperationState

type LastOperationState string

LastOperationState is a string alias.

const (
	// LastOperationStateProcessing indicates that an operation is ongoing.
	LastOperationStateProcessing LastOperationState = "Processing"
	// LastOperationStateSucceeded indicates that an operation has completed successfully.
	LastOperationStateSucceeded LastOperationState = "Succeeded"
	// LastOperationStateError indicates that an operation is completed with errors and will be retried.
	LastOperationStateError LastOperationState = "Error"
	// LastOperationStateFailed indicates that an operation is completed with errors and won't be retried.
	LastOperationStateFailed LastOperationState = "Failed"
	// LastOperationStatePending indicates that an operation cannot be done now, but will be tried in future.
	LastOperationStatePending LastOperationState = "Pending"
	// LastOperationStateAborted indicates that an operation has been aborted.
	LastOperationStateAborted LastOperationState = "Aborted"
)

type LastOperationType

type LastOperationType string

LastOperationType is a string alias.

const (
	// LastOperationTypeCreate indicates a 'create' operation.
	LastOperationTypeCreate LastOperationType = "Create"
	// LastOperationTypeReconcile indicates a 'reconcile' operation.
	LastOperationTypeReconcile LastOperationType = "Reconcile"
	// LastOperationTypeDelete indicates a 'delete' operation.
	LastOperationTypeDelete LastOperationType = "Delete"
	// LastOperationTypeRestore indicates a 'restore' operation.
	LastOperationTypeRestore LastOperationType = "Restore"
	// LastOperationTypeMigrate indicates a 'migrate' operation.
	LastOperationTypeMigrate LastOperationType = "Migrate"
)

type LoadBalancerServicesProxyProtocol

type LoadBalancerServicesProxyProtocol struct {
	// Allowed controls whether the ProxyProtocol is optionally allowed for the load balancer services.
	// This should only be enabled if the load balancer services are already using ProxyProtocol or will be reconfigured to use it soon.
	// Until the load balancers are configured with ProxyProtocol, enabling this setting may allow clients to spoof their source IP addresses.
	// The option allows a migration from non-ProxyProtocol to ProxyProtocol without downtime (depending on the infrastructure).
	// Defaults to false.
	Allowed bool
}

LoadBalancerServicesProxyProtocol controls whether ProxyProtocol is (optionally) allowed for the load balancer services.

func (*LoadBalancerServicesProxyProtocol) DeepCopy

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

func (*LoadBalancerServicesProxyProtocol) DeepCopyInto

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

type Machine

type Machine struct {
	// Type is the machine type of the worker group.
	Type string
	// Image holds information about the machine image to use for all nodes of this pool. It will default to the
	// latest version of the first image stated in the referenced CloudProfile if no value has been provided.
	Image *ShootMachineImage
	// Architecture is the CPU architecture of the machines in this worker pool.
	Architecture *string
}

Machine contains information about the machine type and image.

func (*Machine) DeepCopy

func (in *Machine) DeepCopy() *Machine

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

func (*Machine) DeepCopyInto

func (in *Machine) DeepCopyInto(out *Machine)

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

type MachineControllerManagerSettings

type MachineControllerManagerSettings struct {
	// MachineDrainTimeout is the period after which machine is forcefully deleted.
	MachineDrainTimeout *metav1.Duration
	// MachineHealthTimeout is the period after which machine is declared failed.
	MachineHealthTimeout *metav1.Duration
	// MachineCreationTimeout is the period after which creation of the machine is declared failed.
	MachineCreationTimeout *metav1.Duration
	// MaxEvictRetries are the number of eviction retries on a pod after which drain is declared failed, and forceful deletion is triggered.
	MaxEvictRetries *int32
	// NodeConditions are the set of conditions if set to true for the period of MachineHealthTimeout, machine will be declared failed.
	NodeConditions []string
}

MachineControllerManagerSettings contains configurations for different worker-pools. Eg. MachineDrainTimeout, MachineHealthTimeout.

func (*MachineControllerManagerSettings) DeepCopy

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

func (*MachineControllerManagerSettings) DeepCopyInto

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 name of the image.
	Name string
	// Versions contains versions, expiration dates and container runtimes of the machine image
	Versions []MachineImageVersion
	// UpdateStrategy is the update strategy to use for the machine image. Possible values are:
	//  - patch: update to the latest patch version of the current minor version.
	//  - minor: update to the latest minor and patch version.
	//  - major: always update to the overall latest version (default).
	UpdateStrategy *MachineImageUpdateStrategy
}

MachineImage defines the name and multiple versions of the machine image in any environment.

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 MachineImageUpdateStrategy

type MachineImageUpdateStrategy string

MachineImageUpdateStrategy is the update strategy to use for a machine image

const (
	// UpdateStrategyPatch indicates that auto-updates are performed to the latest patch version of the current minor version.
	// When using an expired version during the maintenance window, force updates to the latest patch of the next (not necessarily consecutive) minor when using an expired version.
	UpdateStrategyPatch MachineImageUpdateStrategy = "patch"
	// UpdateStrategyMinor indicates that auto-updates are performed to the latest patch and minor version of the current major version.
	// When using an expired version during the maintenance window, force updates to the latest minor and patch of the next (not necessarily consecutive) major version.
	UpdateStrategyMinor MachineImageUpdateStrategy = "minor"
	// UpdateStrategyMajor indicates that auto-updates are performed always to the overall latest version.
	UpdateStrategyMajor MachineImageUpdateStrategy = "major"
)

type MachineImageVersion

type MachineImageVersion struct {
	ExpirableVersion
	// CRI list of supported container runtime and interfaces supported by this version
	CRI []CRI
	// Architectures is the list of CPU architectures of the machine image in this version.
	Architectures []string
	// KubeletVersionConstraint is a constraint describing the supported kubelet versions by the machine image in this version.
	// If the field is not specified, it is assumed that the machine image in this version supports all kubelet versions.
	// Examples:
	// - '>= 1.26' - supports only kubelet versions greater than or equal to 1.26
	// - '< 1.26' - supports only kubelet versions less than 1.26
	KubeletVersionConstraint *string
}

MachineImageVersion is an expirable version with list of supported container runtimes and interfaces

func (*MachineImageVersion) DeepCopy

func (in *MachineImageVersion) DeepCopy() *MachineImageVersion

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

func (*MachineImageVersion) DeepCopyInto

func (in *MachineImageVersion) DeepCopyInto(out *MachineImageVersion)

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

type MachineType

type MachineType struct {
	// CPU is the number of CPUs for this machine type.
	CPU resource.Quantity
	// GPU is the number of GPUs for this machine type.
	GPU resource.Quantity
	// Memory is the amount of memory for this machine type.
	Memory resource.Quantity
	// Name is the name of the machine type.
	Name string
	// Storage is the amount of storage associated with the root volume of this machine type.
	Storage *MachineTypeStorage
	// Usable defines if the machine type can be used for shoot clusters.
	Usable *bool
	// Architecture is the CPU architecture of this machine type.
	Architecture *string
}

MachineType contains certain properties of a machine type.

func (*MachineType) DeepCopy

func (in *MachineType) DeepCopy() *MachineType

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

func (*MachineType) DeepCopyInto

func (in *MachineType) DeepCopyInto(out *MachineType)

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

type MachineTypeStorage

type MachineTypeStorage struct {
	// Class is the class of the storage type.
	Class string
	// StorageSize is the storage size.
	StorageSize *resource.Quantity
	// Type is the type of the storage.
	Type string
	// MinSize is the minimal supported storage size.
	// This overrides any other common minimum size configuration in the `spec.volumeTypes[*].minSize`.
	MinSize *resource.Quantity
}

MachineTypeStorage is the amount of storage associated with the root volume of this machine type.

func (*MachineTypeStorage) DeepCopy

func (in *MachineTypeStorage) DeepCopy() *MachineTypeStorage

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

func (*MachineTypeStorage) DeepCopyInto

func (in *MachineTypeStorage) DeepCopyInto(out *MachineTypeStorage)

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

type Maintenance

type Maintenance struct {
	// AutoUpdate contains information about which constraints should be automatically updated.
	AutoUpdate *MaintenanceAutoUpdate
	// TimeWindow contains information about the time window for maintenance operations.
	TimeWindow *MaintenanceTimeWindow
	// ConfineSpecUpdateRollout prevents that changes/updates to the shoot specification will be rolled out immediately.
	// Instead, they are rolled out during the shoot's maintenance time window. There is one exception that will trigger
	// an immediate roll out which is changes to the Spec.Hibernation.Enabled field.
	ConfineSpecUpdateRollout *bool
}

Maintenance contains information about the time window for maintenance operations and which operations should be performed.

func (*Maintenance) DeepCopy

func (in *Maintenance) DeepCopy() *Maintenance

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

func (*Maintenance) DeepCopyInto

func (in *Maintenance) DeepCopyInto(out *Maintenance)

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

type MaintenanceAutoUpdate

type MaintenanceAutoUpdate struct {
	// KubernetesVersion indicates whether the patch Kubernetes version may be automatically updated (default: true).
	KubernetesVersion bool
	// MachineImageVersion indicates whether the machine image version may be automatically updated (default: true).
	MachineImageVersion *bool
}

MaintenanceAutoUpdate contains information about which constraints should be automatically updated.

func (*MaintenanceAutoUpdate) DeepCopy

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

func (*MaintenanceAutoUpdate) DeepCopyInto

func (in *MaintenanceAutoUpdate) DeepCopyInto(out *MaintenanceAutoUpdate)

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

type MaintenanceTimeWindow

type MaintenanceTimeWindow struct {
	// Begin is the beginning of the time window in the format HHMMSS+ZONE, e.g. "220000+0100".
	// If not present, a random value will be computed.
	Begin string
	// End is the end of the time window in the format HHMMSS+ZONE, e.g. "220000+0100".
	// If not present, the value will be computed based on the "Begin" value.
	End string
}

MaintenanceTimeWindow contains information about the time window for maintenance operations.

func (*MaintenanceTimeWindow) DeepCopy

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

func (*MaintenanceTimeWindow) DeepCopyInto

func (in *MaintenanceTimeWindow) DeepCopyInto(out *MaintenanceTimeWindow)

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

type MemorySwapConfiguration

type MemorySwapConfiguration struct {
	// SwapBehavior configures swap memory available to container workloads. May be one of {"LimitedSwap", "UnlimitedSwap"}
	// defaults to: LimitedSwap
	SwapBehavior *SwapBehavior
}

MemorySwapConfiguration contains kubelet swap configuration For more information, please see KEP: 2400-node-swap

func (*MemorySwapConfiguration) DeepCopy

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

func (*MemorySwapConfiguration) DeepCopyInto

func (in *MemorySwapConfiguration) DeepCopyInto(out *MemorySwapConfiguration)

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

type Monitoring

type Monitoring struct {
	// Alerting contains information about the alerting configuration for the shoot cluster.
	Alerting *Alerting
}

Monitoring contains information about the monitoring configuration for the shoot.

func (*Monitoring) DeepCopy

func (in *Monitoring) DeepCopy() *Monitoring

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

func (*Monitoring) DeepCopyInto

func (in *Monitoring) DeepCopyInto(out *Monitoring)

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

type NamedResourceReference

type NamedResourceReference struct {
	// Name of the resource reference.
	Name string
	// ResourceRef is a reference to a resource.
	ResourceRef autoscalingv1.CrossVersionObjectReference
}

NamedResourceReference is a named reference to a resource.

func (*NamedResourceReference) DeepCopy

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

func (*NamedResourceReference) DeepCopyInto

func (in *NamedResourceReference) DeepCopyInto(out *NamedResourceReference)

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

type NamespacedCloudProfile

type NamespacedCloudProfile struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec defines the provider environment properties.
	Spec NamespacedCloudProfileSpec
	// Most recently observed status of the NamespacedCloudProfile.
	Status NamespacedCloudProfileStatus
}

NamespacedCloudProfile represents certain properties about a provider environment.

func (*NamespacedCloudProfile) DeepCopy

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

func (*NamespacedCloudProfile) DeepCopyInto

func (in *NamespacedCloudProfile) DeepCopyInto(out *NamespacedCloudProfile)

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

func (*NamespacedCloudProfile) DeepCopyObject

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

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

type NamespacedCloudProfileList

type NamespacedCloudProfileList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of NamespacedCloudProfiles.
	Items []NamespacedCloudProfile
}

NamespacedCloudProfileList is a collection of NamespacedCloudProfiles.

func (*NamespacedCloudProfileList) DeepCopy

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

func (*NamespacedCloudProfileList) DeepCopyInto

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

func (*NamespacedCloudProfileList) DeepCopyObject

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

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

type NamespacedCloudProfileSpec

type NamespacedCloudProfileSpec struct {
	// CABundle is a certificate bundle which will be installed onto every host machine of shoot cluster targeting this profile.
	CABundle *string
	// Kubernetes contains constraints regarding allowed values of the 'kubernetes' block in the Shoot specification.
	Kubernetes *KubernetesSettings
	// MachineImages contains constraints regarding allowed values for machine images in the Shoot specification.
	MachineImages []MachineImage
	// MachineTypes contains constraints regarding allowed values for machine types in the 'workers' block in the Shoot specification.
	MachineTypes []MachineType
	// VolumeTypes contains constraints regarding allowed values for volume types in the 'workers' block in the Shoot specification.
	VolumeTypes []VolumeType
	// Parent contains a reference to a CloudProfile it inherits from.
	Parent CloudProfileReference
	// ProviderConfig contains provider-specific configuration for the profile.
	ProviderConfig *runtime.RawExtension
}

NamespacedCloudProfileSpec is the specification of a NamespacedCloudProfile.

func (*NamespacedCloudProfileSpec) DeepCopy

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

func (*NamespacedCloudProfileSpec) DeepCopyInto

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

type NamespacedCloudProfileStatus

type NamespacedCloudProfileStatus struct {
	// CloudProfileSpec is the most recently generated CloudProfileSpec of the NamespacedCloudProfile.
	CloudProfileSpec CloudProfileSpec
	// ObservedGeneration is the most recent generation observed for this NamespacedCloudProfile.
	ObservedGeneration int64
}

NamespacedCloudProfileStatus holds the most recently observed status of the NamespacedCloudProfile.

func (*NamespacedCloudProfileStatus) DeepCopy

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

func (*NamespacedCloudProfileStatus) DeepCopyInto

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

type Networking

type Networking struct {
	// Type identifies the type of the networking plugin. This field is immutable.
	Type *string
	// ProviderConfig is the configuration passed to network resource.
	ProviderConfig *runtime.RawExtension
	// Pods is the CIDR of the pod network. This field is immutable.
	Pods *string
	// Nodes is the CIDR of the entire node network.
	// This field is mutable.
	Nodes *string
	// Services is the CIDR of the service network. This field is immutable.
	Services *string
	// 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.
	// Defaults to ["IPv4"].
	IPFamilies []IPFamily
}

Networking defines networking parameters for the shoot cluster.

func (*Networking) DeepCopy

func (in *Networking) DeepCopy() *Networking

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

func (*Networking) DeepCopyInto

func (in *Networking) DeepCopyInto(out *Networking)

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

type NetworkingStatus

type NetworkingStatus struct {
	// Pods are the CIDRs of the pod network.
	Pods []string
	// Nodes are the CIDRs of the node network.
	Nodes []string
	// Services are the CIDRs of the service network.
	Services []string
	// EgressCIDRs is a list of CIDRs used by the shoot as the source IP for egress traffic as reported by the used
	// Infrastructure extension controller. For certain environments the egress IPs may not be stable in which case the
	// extension controller may opt to not populate this field.
	EgressCIDRs []string
}

NetworkingStatus contains information about cluster networking such as CIDRs.

func (*NetworkingStatus) DeepCopy

func (in *NetworkingStatus) DeepCopy() *NetworkingStatus

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

func (*NetworkingStatus) DeepCopyInto

func (in *NetworkingStatus) DeepCopyInto(out *NetworkingStatus)

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

type NginxIngress

type NginxIngress struct {
	Addon
	// LoadBalancerSourceRanges is list of allowed IP sources for NginxIngress
	LoadBalancerSourceRanges []string
	// Config contains custom configuration for the nginx-ingress-controller configuration.
	// See https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/nginx-configuration/configmap.md#configuration-options
	Config map[string]string
	// ExternalTrafficPolicy controls the `.spec.externalTrafficPolicy` value of the load balancer `Service`
	// exposing the nginx-ingress. Defaults to `Cluster`.
	ExternalTrafficPolicy *corev1.ServiceExternalTrafficPolicy
}

NginxIngress describes configuration values for the nginx-ingress addon.

func (*NginxIngress) DeepCopy

func (in *NginxIngress) DeepCopy() *NginxIngress

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

func (*NginxIngress) DeepCopyInto

func (in *NginxIngress) DeepCopyInto(out *NginxIngress)

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

type NodeLocalDNS

type NodeLocalDNS struct {
	// Enabled indicates whether node local DNS is enabled or not.
	Enabled bool
	// ForceTCPToClusterDNS indicates whether the connection from the node local DNS to the cluster DNS (Core DNS) will be forced to TCP or not.
	// Default, if unspecified, is to enforce TCP.
	ForceTCPToClusterDNS *bool
	// ForceTCPToUpstreamDNS indicates whether the connection from the node local DNS to the upstream DNS (infrastructure DNS) will be forced to TCP or not.
	// Default, if unspecified, is to enforce TCP.
	ForceTCPToUpstreamDNS *bool
	// DisableForwardToUpstreamDNS indicates whether requests from node local DNS to upstream DNS should be disabled.
	// Default, if unspecified, is to forward requests for external domains to upstream DNS
	// +optional
	DisableForwardToUpstreamDNS *bool
}

NodeLocalDNS contains the settings of the node local DNS components running in the data plane of the Shoot cluster.

func (*NodeLocalDNS) DeepCopy

func (in *NodeLocalDNS) DeepCopy() *NodeLocalDNS

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

func (*NodeLocalDNS) DeepCopyInto

func (in *NodeLocalDNS) DeepCopyInto(out *NodeLocalDNS)

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

type OCIRepository

type OCIRepository struct {
	// Ref is the full artifact Ref and takes precedence over all other fields.
	Ref *string
	// Repository is a reference to an OCI artifact repository.
	Repository *string
	// Tag is the image tag to pull.
	Tag *string
	// Digest of the image to pull, takes precedence over tag.
	// The value should be in the format 'sha256:<HASH>'.
	Digest *string
}

OCIRepository configures where to pull an OCI Artifact, that could contain for example a Helm Chart.

func (*OCIRepository) DeepCopy

func (in *OCIRepository) DeepCopy() *OCIRepository

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

func (*OCIRepository) DeepCopyInto

func (in *OCIRepository) DeepCopyInto(out *OCIRepository)

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

func (*OCIRepository) GetURL

func (o *OCIRepository) GetURL() string

GetURL returns the fully-qualified OCIRepository URL of the artifact.

type OIDCConfig

type OIDCConfig struct {
	// If set, the OpenID server's certificate will be verified by one of the authorities in the oidc-ca-file, otherwise the host's root CA set will be used.
	CABundle *string
	// ClientAuthentication can optionally contain client configuration used for kubeconfig generation.
	//
	// Deprecated: This field has no implemented use and will be forbidden starting from Kubernetes 1.31.
	// It's use was planned for genereting OIDC kubeconfig https://github.com/gardener/gardener/issues/1433
	// TODO(AleksandarSavchev): Drop this field after support for Kubernetes 1.30 is dropped.
	ClientAuthentication *OpenIDConnectClientAuthentication
	// The client ID for the OpenID Connect client, must be set.
	ClientID *string
	// If provided, the name of a custom OpenID Connect claim for specifying user groups. The claim value is expected to be a string or array of strings. This flag is experimental, please see the authentication documentation for further details.
	GroupsClaim *string
	// If provided, all groups will be prefixed with this value to prevent conflicts with other authentication strategies.
	GroupsPrefix *string
	// The URL of the OpenID issuer, only HTTPS scheme will be accepted. Used to verify the OIDC JSON Web Token (JWT).
	IssuerURL *string
	// key=value pairs that describes a required claim in the ID Token. If set, the claim is verified to be present in the ID Token with a matching value.
	RequiredClaims map[string]string
	// List of allowed JOSE asymmetric signing algorithms. JWTs with a 'alg' header value not in this list will be rejected. Values are defined by RFC 7518 https://tools.ietf.org/html/rfc7518#section-3.1
	SigningAlgs []string
	// The OpenID claim to use as the user name. Note that claims other than the default ('sub') is not guaranteed to be unique and immutable. This flag is experimental, please see the authentication documentation for further details. (default "sub")
	UsernameClaim *string
	// If provided, all usernames will be prefixed with this value. If not provided, username claims other than 'email' are prefixed by the issuer URL to avoid clashes. To skip any prefixing, provide the value '-'.
	UsernamePrefix *string
}

OIDCConfig contains configuration settings for the OIDC provider. Note: Descriptions were taken from the Kubernetes documentation.

func (*OIDCConfig) DeepCopy

func (in *OIDCConfig) DeepCopy() *OIDCConfig

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

func (*OIDCConfig) DeepCopyInto

func (in *OIDCConfig) DeepCopyInto(out *OIDCConfig)

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

type Object

type Object interface {
	metav1.Object
}

Object is a core object resource.

type ObservabilityRotation

type ObservabilityRotation struct {
	// LastInitiationTime is the most recent time when the observability credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastCompletionTime is the most recent time when the observability credential rotation was successfully completed.
	LastCompletionTime *metav1.Time
}

ObservabilityRotation contains information about the observability credential rotation.

func (*ObservabilityRotation) DeepCopy

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

func (*ObservabilityRotation) DeepCopyInto

func (in *ObservabilityRotation) DeepCopyInto(out *ObservabilityRotation)

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

type OpenIDConnectClientAuthentication

type OpenIDConnectClientAuthentication struct {
	// Extra configuration added to kubeconfig's auth-provider.
	// Must not be any of idp-issuer-url, client-id, client-secret, idp-certificate-authority, idp-certificate-authority-data, id-token or refresh-token
	ExtraConfig map[string]string
	// The client Secret for the OpenID Connect client.
	Secret *string
}

OpenIDConnectClientAuthentication contains configuration for OIDC clients.

func (*OpenIDConnectClientAuthentication) DeepCopy

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

func (*OpenIDConnectClientAuthentication) DeepCopyInto

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

type Project

type Project struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec defines the project properties.
	Spec ProjectSpec
	// Most recently observed status of the Project.
	Status ProjectStatus
}

Project holds certain properties about a Gardener project.

func (*Project) DeepCopy

func (in *Project) DeepCopy() *Project

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

func (*Project) DeepCopyInto

func (in *Project) DeepCopyInto(out *Project)

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

func (*Project) DeepCopyObject

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

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

type ProjectList

type ProjectList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of Projects.
	Items []Project
}

ProjectList is a collection of Projects.

func (*ProjectList) DeepCopy

func (in *ProjectList) DeepCopy() *ProjectList

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

func (*ProjectList) DeepCopyInto

func (in *ProjectList) DeepCopyInto(out *ProjectList)

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

func (*ProjectList) DeepCopyObject

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

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

type ProjectMember

type ProjectMember struct {
	// Subject is representing a user name, an email address, or any other identifier of a user, group, or service
	// account that has a certain role.
	rbacv1.Subject
	// Roles is a list of roles of this member.
	Roles []string
}

ProjectMember is a member of a project.

func (*ProjectMember) DeepCopy

func (in *ProjectMember) DeepCopy() *ProjectMember

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

func (*ProjectMember) DeepCopyInto

func (in *ProjectMember) DeepCopyInto(out *ProjectMember)

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

type ProjectPhase

type ProjectPhase string

ProjectPhase is a label for the condition of a project at the current time.

type ProjectSpec

type ProjectSpec struct {
	// CreatedBy is a subject representing a user name, an email address, or any other identifier of a user
	// who created the project. This field is immutable.
	CreatedBy *rbacv1.Subject
	// Description is a human-readable description of what the project is used for.
	Description *string
	// Owner is a subject representing a user name, an email address, or any other identifier of a user owning
	// the project.
	Owner *rbacv1.Subject
	// Purpose is a human-readable explanation of the project's purpose.
	Purpose *string
	// Members is a list of subjects representing a user name, an email address, or any other identifier of a user,
	// group, or service account that has a certain role.
	Members []ProjectMember
	// Namespace is the name of the namespace that has been created for the Project object.
	// A nil value means that Gardener will determine the name of the namespace.
	// This field is immutable.
	Namespace *string
	// Tolerations contains the default tolerations and a list for allowed taints on seed clusters.
	Tolerations *ProjectTolerations
	// DualApprovalForDeletion contains configuration for the dual approval concept for resource deletion.
	DualApprovalForDeletion []DualApprovalForDeletion
}

ProjectSpec is the specification of a Project.

func (*ProjectSpec) DeepCopy

func (in *ProjectSpec) DeepCopy() *ProjectSpec

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

func (*ProjectSpec) DeepCopyInto

func (in *ProjectSpec) DeepCopyInto(out *ProjectSpec)

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

type ProjectStatus

type ProjectStatus struct {
	// ObservedGeneration is the most recent generation observed for this project.
	ObservedGeneration int64
	// Phase is the current phase of the project.
	Phase ProjectPhase
	// StaleSinceTimestamp contains the timestamp when the project was first discovered to be stale/unused.
	StaleSinceTimestamp *metav1.Time
	// StaleAutoDeleteTimestamp contains the timestamp when the project will be garbage-collected/automatically deleted
	// because it's stale/unused.
	StaleAutoDeleteTimestamp *metav1.Time
	// LastActivityTimestamp contains the timestamp from the last activity performed in this project.
	LastActivityTimestamp *metav1.Time
}

ProjectStatus holds the most recently observed status of the project.

func (*ProjectStatus) DeepCopy

func (in *ProjectStatus) DeepCopy() *ProjectStatus

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

func (*ProjectStatus) DeepCopyInto

func (in *ProjectStatus) DeepCopyInto(out *ProjectStatus)

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

type ProjectTolerations

type ProjectTolerations struct {
	// Defaults contains a list of tolerations that are added to the shoots in this project by default.
	Defaults []Toleration
	// Whitelist contains a list of tolerations that are allowed to be added to the shoots in this project. Please note
	// that this list may only be added by users having the `spec-tolerations-whitelist` verb for project resources.
	Whitelist []Toleration
}

ProjectTolerations contains the tolerations for taints on seed clusters.

func (*ProjectTolerations) DeepCopy

func (in *ProjectTolerations) DeepCopy() *ProjectTolerations

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

func (*ProjectTolerations) DeepCopyInto

func (in *ProjectTolerations) DeepCopyInto(out *ProjectTolerations)

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

type Provider

type Provider struct {
	// Type is the type of the provider. This field is immutable.
	Type string
	// ControlPlaneConfig contains the provider-specific control plane config blob. Please look up the concrete
	// definition in the documentation of your provider extension.
	ControlPlaneConfig *runtime.RawExtension
	// InfrastructureConfig contains the provider-specific infrastructure config blob. Please look up the concrete
	// definition in the documentation of your provider extension.
	InfrastructureConfig *runtime.RawExtension
	// Workers is a list of worker groups.
	Workers []Worker
	// WorkersSettings contains settings for all workers.
	WorkersSettings *WorkersSettings
}

Provider contains provider-specific information that are handed-over to the provider-specific extension controller.

func (*Provider) DeepCopy

func (in *Provider) DeepCopy() *Provider

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

func (*Provider) DeepCopyInto

func (in *Provider) DeepCopyInto(out *Provider)

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

type ProxyMode

type ProxyMode string

ProxyMode available in Linux platform: 'userspace' (older, going to be EOL), 'iptables' (newer, faster), 'ipvs' (newest, better in performance and scalability). As of now only 'iptables' and 'ipvs' is supported by Gardener. In Linux platform, if the iptables proxy is selected, regardless of how, but the system's kernel or iptables versions are insufficient, this always falls back to the userspace proxy. IPVS mode will be enabled when proxy mode is set to 'ipvs', and the fall back path is firstly iptables and then userspace.

const (
	// ProxyModeIPTables uses iptables as proxy implementation.
	ProxyModeIPTables ProxyMode = "IPTables"
	// ProxyModeIPVS uses ipvs as proxy implementation.
	ProxyModeIPVS ProxyMode = "IPVS"
)

type Quota

type Quota struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec defines the Quota constraints.
	Spec QuotaSpec
}

Quota represents a quota on resources consumed by shoot clusters either per project or per provider secret.

func (*Quota) DeepCopy

func (in *Quota) DeepCopy() *Quota

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

func (*Quota) DeepCopyInto

func (in *Quota) DeepCopyInto(out *Quota)

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

func (*Quota) DeepCopyObject

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

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

type QuotaList

type QuotaList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of Quotas.
	Items []Quota
}

QuotaList is a collection of Quotas.

func (*QuotaList) DeepCopy

func (in *QuotaList) DeepCopy() *QuotaList

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

func (*QuotaList) DeepCopyInto

func (in *QuotaList) DeepCopyInto(out *QuotaList)

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

func (*QuotaList) DeepCopyObject

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

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

type QuotaSpec

type QuotaSpec struct {
	// ClusterLifetimeDays is the lifetime of a Shoot cluster in days before it will be terminated automatically.
	ClusterLifetimeDays *int32
	// Metrics is a list of resources which will be put under constraints.
	Metrics corev1.ResourceList
	// Scope is the scope of the Quota object, either 'project', 'secret' or 'workloadidentity'. This field is immutable.
	Scope corev1.ObjectReference
}

QuotaSpec is the specification of a Quota.

func (*QuotaSpec) DeepCopy

func (in *QuotaSpec) DeepCopy() *QuotaSpec

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

func (*QuotaSpec) DeepCopyInto

func (in *QuotaSpec) DeepCopyInto(out *QuotaSpec)

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

type Region

type Region struct {
	// Name is a region name.
	Name string
	// Zones is a list of availability zones in this region.
	Zones []AvailabilityZone
	// Labels is an optional set of key-value pairs that contain certain administrator-controlled labels for this region.
	// It can be used by Gardener administrators/operators to provide additional information about a region, e.g. wrt
	// quality, reliability, etc.
	Labels map[string]string
	// AccessRestrictions describe a list of access restrictions that can be used for Shoots using this region.
	AccessRestrictions []AccessRestriction
}

Region contains certain properties of a region.

func (*Region) DeepCopy

func (in *Region) DeepCopy() *Region

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

func (*Region) DeepCopyInto

func (in *Region) DeepCopyInto(out *Region)

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

type ResourceData

type ResourceData struct {
	autoscalingv1.CrossVersionObjectReference
	// Data of the resource
	Data runtime.RawExtension
}

ResourceData holds the data of a resource referred to by an extension controller state.

func (*ResourceData) DeepCopy

func (in *ResourceData) DeepCopy() *ResourceData

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

func (*ResourceData) DeepCopyInto

func (in *ResourceData) DeepCopyInto(out *ResourceData)

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

type ResourceWatchCacheSize

type ResourceWatchCacheSize struct {
	// APIGroup is the API group of the resource for which the watch cache size should be configured.
	// An unset value is used to specify the legacy core API (e.g. for `secrets`).
	APIGroup *string
	// Resource is the name of the resource for which the watch cache size should be configured
	// (in lowercase plural form, e.g. `secrets`).
	Resource string
	// CacheSize specifies the watch cache size that should be configured for the specified resource.
	CacheSize int32
}

ResourceWatchCacheSize contains configuration of the API server's watch cache size for one specific resource.

func (*ResourceWatchCacheSize) DeepCopy

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

func (*ResourceWatchCacheSize) DeepCopyInto

func (in *ResourceWatchCacheSize) DeepCopyInto(out *ResourceWatchCacheSize)

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

type SSHAccess

type SSHAccess struct {
	// Enabled indicates whether the SSH access to the worker nodes is ensured to be enabled or disabled in systemd.
	// Defaults to true.
	Enabled bool
}

SSHAccess contains settings regarding ssh access to the worker nodes.

func (*SSHAccess) DeepCopy

func (in *SSHAccess) DeepCopy() *SSHAccess

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

func (*SSHAccess) DeepCopyInto

func (in *SSHAccess) DeepCopyInto(out *SSHAccess)

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

type SchedulingProfile

type SchedulingProfile string

SchedulingProfile is a string alias used for scheduling profile values.

const (
	// SchedulingProfileBalanced is a scheduling profile that attempts to spread Pods evenly across Nodes
	// to obtain a more balanced resource usage. This profile provides the default kube-scheduler behavior.
	SchedulingProfileBalanced SchedulingProfile = "balanced"
	// SchedulingProfileBinPacking is a scheduling profile that scores Nodes based on the allocation of resources.
	// It prioritizes Nodes with most allocated resources. This leads the Node count in the cluster to be minimized and
	// the Node resource utilization to be increased.
	SchedulingProfileBinPacking SchedulingProfile = "bin-packing"
)

type SecretBinding

type SecretBinding struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// SecretRef is a reference to a secret object in the same or another namespace.
	// This field is immutable.
	SecretRef corev1.SecretReference
	// Quotas is a list of references to Quota objects in the same or another namespace.
	// This field is immutable.
	Quotas []corev1.ObjectReference
	// Provider defines the provider type of the SecretBinding.
	// This field is immutable.
	Provider *SecretBindingProvider
}

SecretBinding represents a binding to a secret in the same or another namespace.

func (*SecretBinding) DeepCopy

func (in *SecretBinding) DeepCopy() *SecretBinding

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

func (*SecretBinding) DeepCopyInto

func (in *SecretBinding) DeepCopyInto(out *SecretBinding)

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

func (*SecretBinding) DeepCopyObject

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

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

type SecretBindingList

type SecretBindingList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of SecretBindings.
	Items []SecretBinding
}

SecretBindingList is a collection of SecretBindings.

func (*SecretBindingList) DeepCopy

func (in *SecretBindingList) DeepCopy() *SecretBindingList

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

func (*SecretBindingList) DeepCopyInto

func (in *SecretBindingList) DeepCopyInto(out *SecretBindingList)

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

func (*SecretBindingList) DeepCopyObject

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

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

type SecretBindingProvider

type SecretBindingProvider struct {
	// Type is the type of the provider.
	//
	// For backwards compatibility, the field can contain multiple providers separated by a comma.
	// However the usage of single SecretBinding (hence Secret) for different cloud providers is strongly discouraged.
	Type string
}

SecretBindingProvider defines the provider type of the SecretBinding.

func (*SecretBindingProvider) DeepCopy

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

func (*SecretBindingProvider) DeepCopyInto

func (in *SecretBindingProvider) DeepCopyInto(out *SecretBindingProvider)

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

type Seed

type Seed struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Spec contains the specification of this installation.
	Spec SeedSpec
	// Status contains the status of this installation.
	Status SeedStatus
}

Seed represents an installation request for an external controller.

func (*Seed) DeepCopy

func (in *Seed) DeepCopy() *Seed

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

func (*Seed) DeepCopyInto

func (in *Seed) DeepCopyInto(out *Seed)

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

func (*Seed) DeepCopyObject

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

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

type SeedBackup

type SeedBackup struct {
	// Provider is a provider name. This field is immutable.
	Provider string
	// ProviderConfig is the configuration passed to BackupBucket resource.
	ProviderConfig *runtime.RawExtension
	// Region is a region name. This field is immutable.
	Region *string
	// SecretRef is a reference to a Secret object containing the cloud provider credentials for
	// the object store where backups should be stored. It should have enough privileges to manipulate
	// the objects as well as buckets.
	SecretRef corev1.SecretReference
}

SeedBackup contains the object store configuration for backups for shoot (currently only etcd).

func (*SeedBackup) DeepCopy

func (in *SeedBackup) DeepCopy() *SeedBackup

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

func (*SeedBackup) DeepCopyInto

func (in *SeedBackup) DeepCopyInto(out *SeedBackup)

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

type SeedDNS

type SeedDNS struct {
	// Provider configures a DNSProvider
	Provider *SeedDNSProvider
}

SeedDNS contains the external domain and configuration for the DNS provider

func (*SeedDNS) DeepCopy

func (in *SeedDNS) DeepCopy() *SeedDNS

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

func (*SeedDNS) DeepCopyInto

func (in *SeedDNS) DeepCopyInto(out *SeedDNS)

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

type SeedDNSProvider

type SeedDNSProvider struct {
	// Type describes the type of the dns-provider, for example `aws-route53`
	Type string
	// SecretRef is a reference to a Secret object containing cloud provider credentials used for registering external domains.
	SecretRef corev1.SecretReference
}

SeedDNSProvider configures a DNS provider

func (*SeedDNSProvider) DeepCopy

func (in *SeedDNSProvider) DeepCopy() *SeedDNSProvider

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

func (*SeedDNSProvider) DeepCopyInto

func (in *SeedDNSProvider) DeepCopyInto(out *SeedDNSProvider)

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

type SeedList

type SeedList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of Seeds.
	Items []Seed
}

SeedList is a collection of Seeds.

func (*SeedList) DeepCopy

func (in *SeedList) DeepCopy() *SeedList

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

func (*SeedList) DeepCopyInto

func (in *SeedList) DeepCopyInto(out *SeedList)

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

func (*SeedList) DeepCopyObject

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

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

type SeedNetworks

type SeedNetworks struct {
	// Nodes is the CIDR of the node network. This field is immutable.
	Nodes *string
	// Pods is the CIDR of the pod network. This field is immutable.
	Pods string
	// Services is the CIDR of the service network. This field is immutable.
	Services string
	// ShootDefaults contains the default networks CIDRs for shoots.
	ShootDefaults *ShootNetworks
	// BlockCIDRs is a list of network addresses that should be blocked for shoot control plane components running
	// in the seed cluster.
	BlockCIDRs []string
	// IPFamilies specifies the IP protocol versions to use for seed networking. This field is immutable.
	// See https://github.com/gardener/gardener/blob/master/docs/development/ipv6.md.
	// Defaults to ["IPv4"].
	IPFamilies []IPFamily
}

SeedNetworks contains CIDRs for the pod, service and node networks of a Kubernetes cluster.

func (*SeedNetworks) DeepCopy

func (in *SeedNetworks) DeepCopy() *SeedNetworks

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

func (*SeedNetworks) DeepCopyInto

func (in *SeedNetworks) DeepCopyInto(out *SeedNetworks)

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

type SeedProvider

type SeedProvider struct {
	// Type is the name of the provider.
	Type string
	// ProviderConfig is the configuration passed to Seed resource.
	ProviderConfig *runtime.RawExtension
	// Region is a name of a region.
	Region string
	// Zones is the list of availability zones the seed cluster is deployed to.
	Zones []string
}

SeedProvider defines the provider-specific information of this Seed cluster.

func (*SeedProvider) DeepCopy

func (in *SeedProvider) DeepCopy() *SeedProvider

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

func (*SeedProvider) DeepCopyInto

func (in *SeedProvider) DeepCopyInto(out *SeedProvider)

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

type SeedSelector

type SeedSelector struct {
	// LabelSelector is optional and can be used to select seeds by their label settings
	metav1.LabelSelector
	// ProviderTypes contains a list of allowed provider types used by the Gardener scheduler to restricting seeds by
	// their provider type and enable cross-provider scheduling.
	// By default, Shoots are only scheduled on Seeds having the same provider type.
	ProviderTypes []string
}

SeedSelector contains constraints for selecting seed to be usable for shoots using a profile

func (*SeedSelector) DeepCopy

func (in *SeedSelector) DeepCopy() *SeedSelector

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

func (*SeedSelector) DeepCopyInto

func (in *SeedSelector) DeepCopyInto(out *SeedSelector)

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

type SeedSettingDependencyWatchdog

type SeedSettingDependencyWatchdog struct {
	// Weeder controls the weeder settings for the dependency-watchdog for the seed.
	Weeder *SeedSettingDependencyWatchdogWeeder
	// Prober controls the prober settings for the dependency-watchdog for the seed.
	Prober *SeedSettingDependencyWatchdogProber
}

SeedSettingDependencyWatchdog controls the dependency-watchdog settings for the seed.

func (*SeedSettingDependencyWatchdog) DeepCopy

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

func (*SeedSettingDependencyWatchdog) DeepCopyInto

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

type SeedSettingDependencyWatchdogProber

type SeedSettingDependencyWatchdogProber struct {
	// Enabled controls whether the prober of the dependency-watchdog should be enabled.
	// reachable via its external ingress in order to avoid melt-down situations.
	Enabled bool
}

SeedSettingDependencyWatchdogProber controls the prober settings for the dependency-watchdog for the seed.

func (*SeedSettingDependencyWatchdogProber) DeepCopy

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

func (*SeedSettingDependencyWatchdogProber) DeepCopyInto

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

type SeedSettingDependencyWatchdogWeeder

type SeedSettingDependencyWatchdogWeeder struct {
	// Enabled controls whether the weeder of the dependency-watchdog should be enabled. This controller
	// helps to alleviate the delay where control plane components remain unavailable by finding the respective pods in
	// CrashLoopBackoff status and restarting them once their dependants become ready and available again.
	Enabled bool
}

SeedSettingDependencyWatchdogWeeder controls the weeder settings for the dependency-watchdog for the seed.

func (*SeedSettingDependencyWatchdogWeeder) DeepCopy

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

func (*SeedSettingDependencyWatchdogWeeder) DeepCopyInto

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

type SeedSettingExcessCapacityReservation

type SeedSettingExcessCapacityReservation struct {
	// Enabled controls whether the default excess capacity reservation should be enabled. When not specified, the functionality is enabled.
	Enabled *bool
	// Configs configures excess capacity reservation deployments for shoot control planes in the seed.
	Configs []SeedSettingExcessCapacityReservationConfig
}

SeedSettingExcessCapacityReservation controls the excess capacity reservation for shoot control planes in the seed.

func (*SeedSettingExcessCapacityReservation) DeepCopy

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

func (*SeedSettingExcessCapacityReservation) DeepCopyInto

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

type SeedSettingExcessCapacityReservationConfig

type SeedSettingExcessCapacityReservationConfig struct {
	// Resources specify the resource requests and limits of the excess-capacity-reservation pod.
	Resources corev1.ResourceList
	// NodeSelector specifies the node where the excess-capacity-reservation pod should run.
	NodeSelector map[string]string
	// Tolerations specify the tolerations for the the excess-capacity-reservation pod.
	Tolerations []corev1.Toleration
}

SeedSettingExcessCapacityReservationConfig configures excess capacity reservation deployments for shoot control planes in the seed.

func (*SeedSettingExcessCapacityReservationConfig) DeepCopy

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

func (*SeedSettingExcessCapacityReservationConfig) DeepCopyInto

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

type SeedSettingLoadBalancerServices

type SeedSettingLoadBalancerServices struct {
	// Annotations is a map of annotations that will be injected/merged into every load balancer service object.
	Annotations map[string]string
	// ExternalTrafficPolicy describes how nodes distribute service traffic they
	// receive on one of the service's "externally-facing" addresses.
	// Defaults to "Cluster".
	ExternalTrafficPolicy *corev1.ServiceExternalTrafficPolicy
	// Zones controls settings, which are specific to the single-zone load balancers in a multi-zonal setup.
	// Can be empty for single-zone seeds. Each specified zone has to relate to one of the zones in seed.spec.provider.zones.
	Zones []SeedSettingLoadBalancerServicesZones
	// ProxyProtocol controls whether ProxyProtocol is (optionally) allowed for the load balancer services.
	// Defaults to nil, which is equivalent to not allowing ProxyProtocol.
	ProxyProtocol *LoadBalancerServicesProxyProtocol
}

SeedSettingLoadBalancerServices controls certain settings for services of type load balancer that are created in the seed.

func (*SeedSettingLoadBalancerServices) DeepCopy

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

func (*SeedSettingLoadBalancerServices) DeepCopyInto

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

type SeedSettingLoadBalancerServicesZones

type SeedSettingLoadBalancerServicesZones struct {
	// Name is the name of the zone as specified in seed.spec.provider.zones.
	Name string
	// Annotations is a map of annotations that will be injected/merged into the zone-specific load balancer service object.
	Annotations map[string]string
	// ExternalTrafficPolicy describes how nodes distribute service traffic they
	// receive on one of the service's "externally-facing" addresses.
	// Defaults to "Cluster".
	ExternalTrafficPolicy *corev1.ServiceExternalTrafficPolicy
	// ProxyProtocol controls whether ProxyProtocol is (optionally) allowed for the load balancer services.
	// Defaults to nil, which is equivalent to not allowing ProxyProtocol.
	ProxyProtocol *LoadBalancerServicesProxyProtocol
}

SeedSettingLoadBalancerServicesZones controls settings, which are specific to the single-zone load balancers in a multi-zonal setup.

func (*SeedSettingLoadBalancerServicesZones) DeepCopy

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

func (*SeedSettingLoadBalancerServicesZones) DeepCopyInto

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

type SeedSettingScheduling

type SeedSettingScheduling struct {
	// Visible controls whether the gardener-scheduler shall consider this seed when scheduling shoots. Invisible seeds
	// are not considered by the scheduler.
	Visible bool
}

SeedSettingScheduling controls settings for scheduling decisions for the seed.

func (*SeedSettingScheduling) DeepCopy

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

func (*SeedSettingScheduling) DeepCopyInto

func (in *SeedSettingScheduling) DeepCopyInto(out *SeedSettingScheduling)

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

type SeedSettingTopologyAwareRouting

type SeedSettingTopologyAwareRouting struct {
	// Enabled controls whether certain Services deployed in the seed cluster should be topology-aware.
	// These Services are etcd-main-client, etcd-events-client, kube-apiserver, gardener-resource-manager and vpa-webhook.
	Enabled bool
}

SeedSettingTopologyAwareRouting controls certain settings for topology-aware traffic routing in the seed. See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md.

func (*SeedSettingTopologyAwareRouting) DeepCopy

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

func (*SeedSettingTopologyAwareRouting) DeepCopyInto

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

type SeedSettingVerticalPodAutoscaler

type SeedSettingVerticalPodAutoscaler struct {
	// Enabled controls whether the VPA components shall be deployed into the garden namespace in the seed cluster. It
	// is enabled by default because Gardener heavily relies on a VPA being deployed. You should only disable this if
	// your seed cluster already has another, manually/custom managed VPA deployment.
	Enabled bool
}

SeedSettingVerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the seed.

func (*SeedSettingVerticalPodAutoscaler) DeepCopy

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

func (*SeedSettingVerticalPodAutoscaler) DeepCopyInto

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

type SeedSettings

type SeedSettings struct {
	// ExcessCapacityReservation controls the excess capacity reservation for shoot control planes in the seed.
	ExcessCapacityReservation *SeedSettingExcessCapacityReservation
	// Scheduling controls settings for scheduling decisions for the seed.
	Scheduling *SeedSettingScheduling
	// LoadBalancerServices controls certain settings for services of type load balancer that are created in the seed.
	LoadBalancerServices *SeedSettingLoadBalancerServices
	// VerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the seed.
	VerticalPodAutoscaler *SeedSettingVerticalPodAutoscaler
	// DependencyWatchdog controls certain settings for the dependency-watchdog components deployed in the seed.
	DependencyWatchdog *SeedSettingDependencyWatchdog
	// TopologyAwareRouting controls certain settings for topology-aware traffic routing in the seed.
	// See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md.
	TopologyAwareRouting *SeedSettingTopologyAwareRouting
}

SeedSettings contains certain settings for this seed cluster.

func (*SeedSettings) DeepCopy

func (in *SeedSettings) DeepCopy() *SeedSettings

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

func (*SeedSettings) DeepCopyInto

func (in *SeedSettings) DeepCopyInto(out *SeedSettings)

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

type SeedSpec

type SeedSpec struct {
	// Backup holds the object store configuration for the backups of shoot (currently only etcd).
	// If it is not specified, then there won't be any backups taken for shoots associated with this seed.
	// If backup field is present in seed, then backups of the etcd from shoot control plane will be stored
	// under the configured object store.
	Backup *SeedBackup
	// DNS contains DNS-relevant information about this seed cluster.
	DNS SeedDNS
	// Networks defines the pod, service and worker network of the Seed cluster.
	Networks SeedNetworks
	// Provider defines the provider type and region for this Seed cluster.
	Provider SeedProvider
	// Settings contains certain settings for this seed cluster.
	Settings *SeedSettings
	// Taints describes taints on the seed.
	Taints []SeedTaint
	// Volume contains settings for persistentvolumes created in the seed cluster.
	Volume *SeedVolume
	// Ingress configures Ingress specific settings of the Seed cluster. This field is immutable.
	Ingress *Ingress
	// AccessRestrictions describe a list of access restrictions for this seed cluster.
	AccessRestrictions []AccessRestriction
}

SeedSpec is the specification of a Seed.

func (*SeedSpec) DeepCopy

func (in *SeedSpec) DeepCopy() *SeedSpec

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

func (*SeedSpec) DeepCopyInto

func (in *SeedSpec) DeepCopyInto(out *SeedSpec)

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

type SeedStatus

type SeedStatus struct {
	// Gardener holds information about the Gardener which last acted on the Shoot.
	Gardener *Gardener
	// KubernetesVersion is the Kubernetes version of the seed cluster.
	KubernetesVersion *string
	// Conditions represents the latest available observations of a Seed's current state.
	Conditions []Condition
	// ObservedGeneration is the most recent generation observed for this Seed. It corresponds to the
	// Seed's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64
	// ClusterIdentity is the identity of the Seed cluster. This field is immutable.
	ClusterIdentity *string
	// Capacity represents the total resources of a seed.
	Capacity corev1.ResourceList
	// Allocatable represents the resources of a seed that are available for scheduling.
	// Defaults to Capacity.
	Allocatable corev1.ResourceList
	// ClientCertificateExpirationTimestamp is the timestamp at which gardenlet's client certificate expires.
	ClientCertificateExpirationTimestamp *metav1.Time
	// LastOperation holds information about the last operation on the Seed.
	LastOperation *LastOperation
}

SeedStatus is the status of a Seed.

func (*SeedStatus) DeepCopy

func (in *SeedStatus) DeepCopy() *SeedStatus

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

func (*SeedStatus) DeepCopyInto

func (in *SeedStatus) DeepCopyInto(out *SeedStatus)

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

type SeedTaint

type SeedTaint struct {
	// Key is the taint key to be applied to a seed.
	Key string
	// Value is the taint value corresponding to the taint key.
	Value *string
}

SeedTaint describes a taint on a seed.

func (*SeedTaint) DeepCopy

func (in *SeedTaint) DeepCopy() *SeedTaint

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

func (*SeedTaint) DeepCopyInto

func (in *SeedTaint) DeepCopyInto(out *SeedTaint)

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

type SeedTemplate

type SeedTemplate struct {
	// Standard object metadata.
	metav1.ObjectMeta
	// Specification of the desired behavior of the Seed.
	Spec SeedSpec
}

SeedTemplate is a template for creating a Seed object.

func (*SeedTemplate) DeepCopy

func (in *SeedTemplate) DeepCopy() *SeedTemplate

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

func (*SeedTemplate) DeepCopyInto

func (in *SeedTemplate) DeepCopyInto(out *SeedTemplate)

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

type SeedVolume

type SeedVolume struct {
	// MinimumSize defines the minimum size that should be used for PVCs in the seed.
	MinimumSize *resource.Quantity
	// Providers is a list of storage class provisioner types for the seed.
	Providers []SeedVolumeProvider
}

SeedVolume contains settings for persistentvolumes created in the seed cluster.

func (*SeedVolume) DeepCopy

func (in *SeedVolume) DeepCopy() *SeedVolume

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

func (*SeedVolume) DeepCopyInto

func (in *SeedVolume) DeepCopyInto(out *SeedVolume)

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

type SeedVolumeProvider

type SeedVolumeProvider struct {
	// Purpose is the purpose of this provider.
	Purpose string
	// Name is the name of the storage class provisioner type.
	Name string
}

SeedVolumeProvider is a storage class provisioner type.

func (*SeedVolumeProvider) DeepCopy

func (in *SeedVolumeProvider) DeepCopy() *SeedVolumeProvider

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

func (*SeedVolumeProvider) DeepCopyInto

func (in *SeedVolumeProvider) DeepCopyInto(out *SeedVolumeProvider)

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

type ServiceAccountConfig

type ServiceAccountConfig struct {
	// Issuer is the identifier of the service account token issuer. The issuer will assert this
	// identifier in "iss" claim of issued tokens. This value is used to generate new service account tokens.
	// This value is a string or URI. Defaults to URI of the API server.
	Issuer *string
	// ExtendTokenExpiration turns on projected service account expiration extension during token generation, which
	// helps safe transition from legacy token to bound service account token feature. If this flag is enabled,
	// admission injected tokens would be extended up to 1 year to prevent unexpected failure during transition,
	// ignoring value of service-account-max-token-expiration.
	ExtendTokenExpiration *bool
	// MaxTokenExpiration is the maximum validity duration of a token created by the service account token issuer. If an
	// otherwise valid TokenRequest with a validity duration larger than this value is requested, a token will be issued
	// with a validity duration of this value.
	// This field must be within [30d,90d].
	MaxTokenExpiration *metav1.Duration
	// AcceptedIssuers is an additional set of issuers that are used to determine which service account tokens are accepted.
	// These values are not used to generate new service account tokens. Only useful when service account tokens are also
	// issued by another external system or a change of the current issuer that is used for generating tokens is being performed.
	AcceptedIssuers []string
}

ServiceAccountConfig is the kube-apiserver configuration for service accounts.

func (*ServiceAccountConfig) DeepCopy

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

func (*ServiceAccountConfig) DeepCopyInto

func (in *ServiceAccountConfig) DeepCopyInto(out *ServiceAccountConfig)

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

type ServiceAccountKeyRotation

type ServiceAccountKeyRotation struct {
	// Phase describes the phase of the service account key credential rotation.
	Phase CredentialsRotationPhase
	// LastCompletionTime is the most recent time when the service account key credential rotation was successfully
	// completed.
	LastCompletionTime *metav1.Time
	// LastInitiationTime is the most recent time when the service account key credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastInitiationFinishedTime is the recent time when the service account key credential rotation initiation was
	// completed.
	LastInitiationFinishedTime *metav1.Time
	// LastCompletionTriggeredTime is the recent time when the service account key credential rotation completion was
	// triggered.
	LastCompletionTriggeredTime *metav1.Time
}

ServiceAccountKeyRotation contains information about the service account key credential rotation.

func (*ServiceAccountKeyRotation) DeepCopy

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

func (*ServiceAccountKeyRotation) DeepCopyInto

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

type Shoot

type Shoot struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Specification of the Shoot cluster.
	// If the object's deletion timestamp is set, this field is immutable.
	Spec ShootSpec
	// Most recently observed status of the Shoot cluster.
	Status ShootStatus
}

Shoot represents a Shoot cluster created and managed by Gardener.

func (*Shoot) DeepCopy

func (in *Shoot) DeepCopy() *Shoot

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

func (*Shoot) DeepCopyInto

func (in *Shoot) DeepCopyInto(out *Shoot)

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

func (*Shoot) DeepCopyObject

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

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

type ShootAdvertisedAddress

type ShootAdvertisedAddress struct {
	// Name of the advertised address. e.g. external
	Name string
	// The URL of the API Server. e.g. https://api.foo.bar or https://1.2.3.4
	URL string
}

ShootAdvertisedAddress contains information for the shoot's Kube API server.

func (*ShootAdvertisedAddress) DeepCopy

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

func (*ShootAdvertisedAddress) DeepCopyInto

func (in *ShootAdvertisedAddress) DeepCopyInto(out *ShootAdvertisedAddress)

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

type ShootCredentials

type ShootCredentials struct {
	// Rotation contains information about the credential rotations.
	Rotation *ShootCredentialsRotation
}

ShootCredentials contains information about the shoot credentials.

func (*ShootCredentials) DeepCopy

func (in *ShootCredentials) DeepCopy() *ShootCredentials

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

func (*ShootCredentials) DeepCopyInto

func (in *ShootCredentials) DeepCopyInto(out *ShootCredentials)

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

type ShootCredentialsRotation

type ShootCredentialsRotation struct {
	// CertificateAuthorities contains information about the certificate authority credential rotation.
	CertificateAuthorities *CARotation
	// Kubeconfig contains information about the kubeconfig credential rotation.
	Kubeconfig *ShootKubeconfigRotation
	// SSHKeypair contains information about the ssh-keypair credential rotation.
	SSHKeypair *ShootSSHKeypairRotation
	// Observability contains information about the observability credential rotation.
	Observability *ObservabilityRotation
	// ServiceAccountKey contains information about the service account key credential rotation.
	ServiceAccountKey *ServiceAccountKeyRotation
	// ETCDEncryptionKey contains information about the ETCD encryption key credential rotation.
	ETCDEncryptionKey *ETCDEncryptionKeyRotation
}

ShootCredentialsRotation contains information about the rotation of credentials.

func (*ShootCredentialsRotation) DeepCopy

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

func (*ShootCredentialsRotation) DeepCopyInto

func (in *ShootCredentialsRotation) DeepCopyInto(out *ShootCredentialsRotation)

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

type ShootKubeconfigRotation

type ShootKubeconfigRotation struct {
	// LastInitiationTime is the most recent time when the kubeconfig credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastCompletionTime is the most recent time when the kubeconfig credential rotation was successfully completed.
	LastCompletionTime *metav1.Time
}

ShootKubeconfigRotation contains information about the kubeconfig credential rotation.

func (*ShootKubeconfigRotation) DeepCopy

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

func (*ShootKubeconfigRotation) DeepCopyInto

func (in *ShootKubeconfigRotation) DeepCopyInto(out *ShootKubeconfigRotation)

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

type ShootList

type ShootList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of Shoots.
	Items []Shoot
}

ShootList is a list of Shoot objects.

func (*ShootList) DeepCopy

func (in *ShootList) DeepCopy() *ShootList

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

func (*ShootList) DeepCopyInto

func (in *ShootList) DeepCopyInto(out *ShootList)

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

func (*ShootList) DeepCopyObject

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

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

type ShootMachineImage

type ShootMachineImage struct {
	// Name is the name of the image.
	Name string
	// ProviderConfig is the shoot's individual configuration passed to an extension resource.
	ProviderConfig *runtime.RawExtension
	// Version is the version of the shoot's image.
	// If version is not provided, it will be defaulted to the latest version from the CloudProfile.
	Version string
}

ShootMachineImage defines the name and the version of the shoot's machine image in any environment. Has to be defined in the respective CloudProfile.

func (*ShootMachineImage) DeepCopy

func (in *ShootMachineImage) DeepCopy() *ShootMachineImage

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

func (*ShootMachineImage) DeepCopyInto

func (in *ShootMachineImage) DeepCopyInto(out *ShootMachineImage)

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

type ShootNetworks

type ShootNetworks struct {
	// Pods is the CIDR of the pod network.
	Pods *string
	// Services is the CIDR of the service network.
	Services *string
}

ShootNetworks contains the default networks CIDRs for shoots.

func (*ShootNetworks) DeepCopy

func (in *ShootNetworks) DeepCopy() *ShootNetworks

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

func (*ShootNetworks) DeepCopyInto

func (in *ShootNetworks) DeepCopyInto(out *ShootNetworks)

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

type ShootPurpose

type ShootPurpose string

ShootPurpose is a type alias for string.

const (
	// ShootPurposeEvaluation is a constant for the evaluation purpose.
	ShootPurposeEvaluation ShootPurpose = "evaluation"
	// ShootPurposeTesting is a constant for the testing purpose.
	ShootPurposeTesting ShootPurpose = "testing"
	// ShootPurposeDevelopment is a constant for the development purpose.
	ShootPurposeDevelopment ShootPurpose = "development"
	// ShootPurposeProduction is a constant for the production purpose.
	ShootPurposeProduction ShootPurpose = "production"
	// ShootPurposeInfrastructure is a constant for the infrastructure purpose.
	ShootPurposeInfrastructure ShootPurpose = "infrastructure"
)

type ShootSSHKeypairRotation

type ShootSSHKeypairRotation struct {
	// LastInitiationTime is the most recent time when the ssh-keypair credential rotation was initiated.
	LastInitiationTime *metav1.Time
	// LastCompletionTime is the most recent time when the ssh-keypair credential rotation was successfully completed.
	LastCompletionTime *metav1.Time
}

ShootSSHKeypairRotation contains information about the ssh-keypair credential rotation.

func (*ShootSSHKeypairRotation) DeepCopy

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

func (*ShootSSHKeypairRotation) DeepCopyInto

func (in *ShootSSHKeypairRotation) DeepCopyInto(out *ShootSSHKeypairRotation)

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

type ShootSpec

type ShootSpec struct {
	// Addons contains information about enabled/disabled addons and their configuration.
	Addons *Addons
	// CloudProfileName is a name of a CloudProfile object.
	// This field will be deprecated soon, use `CloudProfile` instead.
	CloudProfileName *string
	// DNS contains information about the DNS settings of the Shoot.
	DNS *DNS
	// Extensions contain type and provider information for Shoot extensions.
	Extensions []Extension
	// Hibernation contains information whether the Shoot is suspended or not.
	Hibernation *Hibernation
	// Kubernetes contains the version and configuration settings of the control plane components.
	Kubernetes Kubernetes
	// Networking contains information about cluster networking such as CNI Plugin type, CIDRs, ...etc.
	Networking *Networking
	// Maintenance contains information about the time window for maintenance operations and which
	// operations should be performed.
	Maintenance *Maintenance
	// Monitoring contains information about custom monitoring configurations for the shoot.
	Monitoring *Monitoring
	// Provider contains all provider-specific and provider-relevant information.
	Provider Provider
	// Purpose is the purpose class for this cluster.
	Purpose *ShootPurpose
	// Region is a name of a region. This field is immutable.
	Region string
	// SecretBindingName is the name of a SecretBinding that has a reference to the provider secret.
	// The credentials inside the provider secret will be used to create the shoot in the respective account.
	// The field is mutually exclusive with CredentialsBindingName.
	// This field is immutable.
	SecretBindingName *string
	// SeedName is the name of the seed cluster that runs the control plane of the Shoot.
	SeedName *string
	// SeedSelector is an optional selector which must match a seed's labels for the shoot to be scheduled on that seed.
	SeedSelector *SeedSelector
	// Resources holds a list of named resource references that can be referred to in extension configs by their names.
	Resources []NamedResourceReference
	// Tolerations contains the tolerations for taints on seed clusters.
	Tolerations []Toleration
	// ExposureClassName is the optional name of an exposure class to apply a control plane endpoint exposure strategy.
	// This field is immutable.
	ExposureClassName *string
	// SystemComponents contains the settings of system components in the control or data plane of the Shoot cluster.
	SystemComponents *SystemComponents
	// ControlPlane contains general settings for the control plane of the shoot.
	ControlPlane *ControlPlane
	// SchedulerName is the name of the responsible scheduler which schedules the shoot.
	// If not specified, the default scheduler takes over.
	// This field is immutable.
	SchedulerName *string
	// CloudProfile is a reference to a CloudProfile or a NamespacedCloudProfile.
	CloudProfile *CloudProfileReference
	// CredentialsBindingName is the name of a CredentialsBinding that has a reference to the provider credentials.
	// The credentials will be used to create the shoot in the respective account. The field is mutually exclusive with SecretBindingName.
	CredentialsBindingName *string
	// AccessRestrictions describe a list of access restrictions for this shoot cluster.
	AccessRestrictions []AccessRestrictionWithOptions
}

ShootSpec is the specification of a Shoot.

func (*ShootSpec) DeepCopy

func (in *ShootSpec) DeepCopy() *ShootSpec

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

func (*ShootSpec) DeepCopyInto

func (in *ShootSpec) DeepCopyInto(out *ShootSpec)

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

type ShootState

type ShootState struct {
	metav1.TypeMeta
	// Standard object metadata.
	metav1.ObjectMeta
	// Specification of the ShootState.
	Spec ShootStateSpec
}

ShootState contains the state of a Shoot cluster required to migrate the Shoot's control plane to a new Seed.

func (*ShootState) DeepCopy

func (in *ShootState) DeepCopy() *ShootState

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

func (*ShootState) DeepCopyInto

func (in *ShootState) DeepCopyInto(out *ShootState)

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

func (*ShootState) DeepCopyObject

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

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

type ShootStateList

type ShootStateList struct {
	metav1.TypeMeta
	// Standard list object metadata.
	metav1.ListMeta
	// Items is the list of ShootStates.
	Items []ShootState
}

ShootStateList is a list of ShootState objects.

func (*ShootStateList) DeepCopy

func (in *ShootStateList) DeepCopy() *ShootStateList

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

func (*ShootStateList) DeepCopyInto

func (in *ShootStateList) DeepCopyInto(out *ShootStateList)

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

func (*ShootStateList) DeepCopyObject

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

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

type ShootStateSpec

type ShootStateSpec struct {
	// Gardener holds the data required to generate resources deployed by the gardenlet
	Gardener []GardenerResourceData
	// Extensions holds the state of custom resources reconciled by extension controllers in the seed
	Extensions []ExtensionResourceState
	// Resources holds the data of resources referred to by extension controller states
	Resources []ResourceData
}

ShootStateSpec is the specification of the ShootState.

func (*ShootStateSpec) DeepCopy

func (in *ShootStateSpec) DeepCopy() *ShootStateSpec

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

func (*ShootStateSpec) DeepCopyInto

func (in *ShootStateSpec) DeepCopyInto(out *ShootStateSpec)

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

type ShootStatus

type ShootStatus struct {
	// Conditions represents the latest available observations of a Shoot's current state.
	Conditions []Condition
	// Constraints represents conditions of a Shoot's current state that constraint some operations on it.
	Constraints []Condition
	// Gardener holds information about the Gardener which last acted on the Shoot.
	Gardener Gardener
	// IsHibernated indicates whether the Shoot is currently hibernated.
	IsHibernated bool
	// LastHibernationTriggerTime indicates the last time when the hibernation controller
	// managed to change the hibernation settings of the cluster
	LastHibernationTriggerTime *metav1.Time
	// LastOperation holds information about the last operation on the Shoot.
	LastOperation *LastOperation
	// LastErrors holds information about the last occurred error(s) during an operation.
	LastErrors []LastError
	// ObservedGeneration is the most recent generation observed for this Shoot. It corresponds to the
	// Shoot's generation, which is updated on mutation by the API Server.
	ObservedGeneration int64
	// RetryCycleStartTime is the start time of the last retry cycle (used to determine how often an operation
	// must be retried until we give up).
	RetryCycleStartTime *metav1.Time
	// SeedName is the name of the seed cluster that runs the control plane of the Shoot. This value is only written
	// after a successful create/reconcile operation. It will be used when control planes are moved between Seeds.
	SeedName *string
	// TechnicalID is the name that is used for creating the Seed namespace, the infrastructure resources, and
	// basically everything that is related to this particular Shoot. This field is immutable.
	TechnicalID string
	// UID is a unique identifier for the Shoot cluster to avoid portability between Kubernetes clusters.
	// It is used to compute unique hashes. This field is immutable.
	UID types.UID
	// ClusterIdentity is the identity of the Shoot cluster. This field is immutable.
	ClusterIdentity *string
	// List of addresses that are relevant to the shoot.
	// These include the Kube API server address and also the service account issuer.
	AdvertisedAddresses []ShootAdvertisedAddress
	// MigrationStartTime is the time when a migration to a different seed was initiated.
	MigrationStartTime *metav1.Time
	// Credentials contains information about the shoot credentials.
	Credentials *ShootCredentials
	// LastMaintenance holds information about the last maintenance operations on the Shoot.
	LastMaintenance *LastMaintenance
	// EncryptedResources is the list of resources in the Shoot which are currently encrypted.
	// Secrets are encrypted by default and are not part of the list.
	// See https://github.com/gardener/gardener/blob/master/docs/usage/security/etcd_encryption_config.md for more details.
	EncryptedResources []string
	// Networking contains information about cluster networking such as CIDRs.
	Networking *NetworkingStatus
}

ShootStatus holds the most recently observed status of the Shoot cluster.

func (*ShootStatus) DeepCopy

func (in *ShootStatus) DeepCopy() *ShootStatus

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

func (*ShootStatus) DeepCopyInto

func (in *ShootStatus) DeepCopyInto(out *ShootStatus)

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

type ShootTemplate

type ShootTemplate struct {
	// Standard object metadata.
	metav1.ObjectMeta
	// Specification of the desired behavior of the Shoot.
	Spec ShootSpec
}

ShootTemplate is a template for creating a Shoot object.

func (*ShootTemplate) DeepCopy

func (in *ShootTemplate) DeepCopy() *ShootTemplate

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

func (*ShootTemplate) DeepCopyInto

func (in *ShootTemplate) DeepCopyInto(out *ShootTemplate)

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

type StructuredAuthentication

type StructuredAuthentication struct {
	// ConfigMapName is the name of the ConfigMap in the project namespace
	// which contains AuthenticationConfiguration for the kube-apiserver.
	ConfigMapName string
}

StructuredAuthentication contains authentication config for kube-apiserver.

func (*StructuredAuthentication) DeepCopy

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

func (*StructuredAuthentication) DeepCopyInto

func (in *StructuredAuthentication) DeepCopyInto(out *StructuredAuthentication)

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

type StructuredAuthorization

type StructuredAuthorization struct {
	// ConfigMapName is the name of the ConfigMap in the project namespace which contains AuthorizationConfiguration for
	// the kube-apiserver.
	ConfigMapName string
	// Kubeconfigs is a list of references for kubeconfigs for the authorization webhooks.
	Kubeconfigs []AuthorizerKubeconfigReference
}

StructuredAuthorization contains authorization config for kube-apiserver.

func (*StructuredAuthorization) DeepCopy

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

func (*StructuredAuthorization) DeepCopyInto

func (in *StructuredAuthorization) DeepCopyInto(out *StructuredAuthorization)

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

type SwapBehavior

type SwapBehavior string

SwapBehavior configures swap memory available to container workloads

const (
	// NoSwap is a constant for the kubelet's swap behavior restricting Kubernetes workloads to not use swap.
	// Only available for Kubernetes versions >= v1.30.
	NoSwap SwapBehavior = "NoSwap"
	// LimitedSwap is a constant for the kubelet's swap behavior limiting the amount of swap usable for Kubernetes workloads. Workloads on the node not managed by Kubernetes can still swap.
	// - cgroupsv1 host: Kubernetes workloads can use any combination of memory and swap, up to the pod's memory limit
	// - cgroupsv2 host: swap is managed independently from memory. Kubernetes workloads cannot use swap memory.
	LimitedSwap SwapBehavior = "LimitedSwap"
	// UnlimitedSwap is a constant for the kubelet's swap behavior enabling Kubernetes workloads to use as much swap memory as required, up to the system limit (not limited by pod or container memory limits).
	// Only available for Kubernetes versions < v1.30.
	UnlimitedSwap SwapBehavior = "UnlimitedSwap"
)

type SystemComponents

type SystemComponents struct {
	// CoreDNS contains the settings of the Core DNS components running in the data plane of the Shoot cluster.
	CoreDNS *CoreDNS
	// NodeLocalDNS contains the settings of the node local DNS components running in the data plane of the Shoot cluster.
	NodeLocalDNS *NodeLocalDNS
}

SystemComponents contains the settings of system components in the control or data plane of the Shoot cluster.

func (*SystemComponents) DeepCopy

func (in *SystemComponents) DeepCopy() *SystemComponents

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

func (*SystemComponents) DeepCopyInto

func (in *SystemComponents) DeepCopyInto(out *SystemComponents)

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

type Toleration

type Toleration struct {
	// Key is the toleration key to be applied to a project or shoot.
	Key string
	// Value is the toleration value corresponding to the toleration key.
	Value *string
}

Toleration is a toleration for a seed taint.

func (*Toleration) DeepCopy

func (in *Toleration) DeepCopy() *Toleration

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

func (*Toleration) DeepCopyInto

func (in *Toleration) DeepCopyInto(out *Toleration)

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

type VersionClassification

type VersionClassification string

VersionClassification is the logical state of a version.

const (
	// ClassificationPreview indicates that a version has recently been added and not promoted to "Supported" yet.
	// ClassificationPreview versions will not be considered for automatic Kubernetes and Machine Image patch version updates.
	ClassificationPreview VersionClassification = "preview"
	// ClassificationSupported indicates that a patch version is the recommended version for a shoot.
	// Only one "supported" version is allowed per minor version.
	// Supported versions are eligible for the automated Kubernetes and Machine image patch version update for shoot clusters in Gardener.
	ClassificationSupported VersionClassification = "supported"
	// ClassificationDeprecated indicates that a patch version should not be used anymore, should be updated to a new version
	// and will eventually expire.
	ClassificationDeprecated VersionClassification = "deprecated"
)

type VerticalPodAutoscaler

type VerticalPodAutoscaler struct {
	// Enabled specifies whether the Kubernetes VPA shall be enabled for the shoot cluster.
	Enabled bool
	// EvictAfterOOMThreshold defines the threshold that will lead to pod eviction in case it OOMed in less than the given
	// threshold since its start and if it has only one container (default: 10m0s).
	EvictAfterOOMThreshold *metav1.Duration
	// EvictionRateBurst defines the burst of pods that can be evicted (default: 1)
	EvictionRateBurst *int32
	// EvictionRateLimit defines the number of pods that can be evicted per second. A rate limit set to 0 or -1 will
	// disable the rate limiter (default: -1).
	EvictionRateLimit *float64
	// EvictionTolerance defines the fraction of replica count that can be evicted for update in case more than one
	// pod can be evicted (default: 0.5).
	EvictionTolerance *float64
	// RecommendationMarginFraction is the fraction of usage added as the safety margin to the recommended request
	// (default: 0.15).
	RecommendationMarginFraction *float64
	// UpdaterInterval is the interval how often the updater should run (default: 1m0s).
	UpdaterInterval *metav1.Duration
	// RecommenderInterval is the interval how often metrics should be fetched (default: 1m0s).
	RecommenderInterval *metav1.Duration
	// TargetCPUPercentile is the usage percentile that will be used as a base for CPU target recommendation.
	// Doesn't affect CPU lower bound, CPU upper bound nor memory recommendations.
	// (default: 0.9)
	TargetCPUPercentile *float64
	// RecommendationLowerBoundCPUPercentile is the usage percentile that will be used for the lower bound on CPU recommendation.
	// (default: 0.5)
	RecommendationLowerBoundCPUPercentile *float64
	// RecommendationUpperBoundCPUPercentile is the usage percentile that will be used for the upper bound on CPU recommendation.
	// (default: 0.95)
	RecommendationUpperBoundCPUPercentile *float64
	// TargetMemoryPercentile is the usage percentile that will be used as a base for memory target recommendation.
	// Doesn't affect memory lower bound nor memory upper bound.
	// (default: 0.9)
	TargetMemoryPercentile *float64
	// RecommendationLowerBoundMemoryPercentile is the usage percentile that will be used for the lower bound on memory recommendation.
	// (default: 0.5)
	RecommendationLowerBoundMemoryPercentile *float64
	// RecommendationUpperBoundMemoryPercentile is the usage percentile that will be used for the upper bound on memory recommendation.
	// (default: 0.95)
	RecommendationUpperBoundMemoryPercentile *float64
}

VerticalPodAutoscaler contains the configuration flags for the Kubernetes vertical pod autoscaler.

func (*VerticalPodAutoscaler) DeepCopy

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

func (*VerticalPodAutoscaler) DeepCopyInto

func (in *VerticalPodAutoscaler) DeepCopyInto(out *VerticalPodAutoscaler)

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

type Volume

type Volume struct {
	// Name of the volume to make it referenceable.
	Name *string
	// Type is the type of the volume.
	Type *string
	// VolumeSize is the size of the volume.
	VolumeSize string
	// Encrypted determines if the volume should be encrypted.
	Encrypted *bool
}

Volume contains information about the volume type and size.

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 VolumeType

type VolumeType struct {
	// Class is the class of the volume type.
	Class string
	// Name is the name of the volume type.
	Name string
	// Usable defines if the volume type can be used for shoot clusters.
	Usable *bool
	// MinSize is the minimal supported storage size.
	MinSize *resource.Quantity
}

VolumeType contains certain properties of a volume type.

func (*VolumeType) DeepCopy

func (in *VolumeType) DeepCopy() *VolumeType

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

func (*VolumeType) DeepCopyInto

func (in *VolumeType) DeepCopyInto(out *VolumeType)

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

type WatchCacheSizes

type WatchCacheSizes struct {
	// Default configures the default watch cache size of the kube-apiserver
	// (flag `--default-watch-cache-size`, defaults to 100).
	// See: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/
	Default *int32
	// Resources configures the watch cache size of the kube-apiserver per resource
	// (flag `--watch-cache-sizes`).
	// See: https://kubernetes.io/docs/reference/command-line-tools-reference/kube-apiserver/
	Resources []ResourceWatchCacheSize
}

WatchCacheSizes contains configuration of the API server's watch cache sizes.

func (*WatchCacheSizes) DeepCopy

func (in *WatchCacheSizes) DeepCopy() *WatchCacheSizes

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

func (*WatchCacheSizes) DeepCopyInto

func (in *WatchCacheSizes) DeepCopyInto(out *WatchCacheSizes)

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

type Worker

type Worker struct {
	// Annotations is a map of key/value pairs for annotations for all the `Node` objects in this worker pool.
	Annotations map[string]string
	// CABundle is a certificate bundle which will be installed onto every machine of this worker pool.
	CABundle *string
	// CRI contains configurations of CRI support of every machine in the worker pool.
	// Defaults to a CRI with name `containerd`.
	CRI *CRI
	// Kubernetes contains configuration for Kubernetes components related to this worker pool.
	Kubernetes *WorkerKubernetes
	// Labels is a map of key/value pairs for labels for all the `Node` objects in this worker pool.
	Labels map[string]string
	// Name is the name of the worker group.
	Name string
	// Machine contains information about the machine type and image.
	Machine Machine
	// Maximum is the maximum number of machines to create.
	// This value is divided by the number of configured zones for a fair distribution.
	Maximum int32
	// Minimum is the minimum number of machines to create.
	// This value is divided by the number of configured zones for a fair distribution.
	Minimum int32
	// MaxSurge is maximum number of machines that are created during an update.
	// This value is divided by the number of configured zones for a fair distribution.
	MaxSurge *intstr.IntOrString
	// MaxUnavailable is the maximum number of machines that can be unavailable during an update.
	// This value is divided by the number of configured zones for a fair distribution.
	MaxUnavailable *intstr.IntOrString
	// ProviderConfig is the provider-specific configuration for this worker pool.
	ProviderConfig *runtime.RawExtension
	// SystemComponents contains configuration for system components related to this worker pool
	SystemComponents *WorkerSystemComponents
	// Taints is a list of taints for all the `Node` objects in this worker pool.
	Taints []corev1.Taint
	// Volume contains information about the volume type and size.
	Volume *Volume
	// DataVolumes contains a list of additional worker volumes.
	DataVolumes []DataVolume
	// KubeletDataVolumeName contains the name of a dataVolume that should be used for storing kubelet state.
	KubeletDataVolumeName *string
	// Zones is a list of availability zones that are used to evenly distribute this worker pool. Optional
	// as not every provider may support availability zones.
	Zones []string
	// MachineControllerManagerSettings contains configurations for different worker-pools. Eg. MachineDrainTimeout, MachineHealthTimeout.
	MachineControllerManagerSettings *MachineControllerManagerSettings
	// Sysctls is a map of kernel settings to apply on all machines in this worker pool.
	Sysctls map[string]string
	// ClusterAutoscaler contains the cluster autoscaler configurations for the worker pool.
	ClusterAutoscaler *ClusterAutoscalerOptions
}

Worker is the base definition of a worker group.

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.

type WorkerKubernetes

type WorkerKubernetes struct {
	// Kubelet contains configuration settings for all kubelets of this worker pool.
	// If set, all `spec.kubernetes.kubelet` settings will be overwritten for this worker pool (no merge of settings).
	Kubelet *KubeletConfig
	// Version is the semantic Kubernetes version to use for the Kubelet in this Worker Group.
	// If not specified the kubelet version is derived from the global shoot cluster kubernetes version.
	// version must be equal or lower than the version of the shoot kubernetes version.
	// Only one minor version difference to other worker groups and global kubernetes version is allowed.
	Version *string
}

WorkerKubernetes contains configuration for Kubernetes components related to this worker pool.

func (*WorkerKubernetes) DeepCopy

func (in *WorkerKubernetes) DeepCopy() *WorkerKubernetes

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

func (*WorkerKubernetes) DeepCopyInto

func (in *WorkerKubernetes) DeepCopyInto(out *WorkerKubernetes)

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

type WorkerSystemComponents

type WorkerSystemComponents struct {
	// Allow determines whether the pool should be allowed to host system components or not (defaults to true)
	Allow bool
}

WorkerSystemComponents contains configuration for system components related to this worker pool

func (*WorkerSystemComponents) DeepCopy

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

func (*WorkerSystemComponents) DeepCopyInto

func (in *WorkerSystemComponents) DeepCopyInto(out *WorkerSystemComponents)

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

type WorkersSettings

type WorkersSettings struct {
	// SSHAccess contains settings regarding ssh access to the worker nodes.
	SSHAccess *SSHAccess
}

WorkersSettings contains settings for all workers.

func (*WorkersSettings) DeepCopy

func (in *WorkersSettings) DeepCopy() *WorkersSettings

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

func (*WorkersSettings) DeepCopyInto

func (in *WorkersSettings) DeepCopyInto(out *WorkersSettings)

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

Directories

Path Synopsis
Package v1 is a version of the API.
Package v1 is a version of the API.
Package v1beta1 is a version of the API.
Package v1beta1 is a version of the API.

Jump to

Keyboard shortcuts

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