Documentation ¶
Overview ¶
Package v1alpha1 contains the configuration of the Gardener Operator. +groupName=operator.gardener.cloud
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type AdmissionDeploymentSpec
- type AuditWebhook
- type Authentication
- type AuthenticationWebhook
- type Backup
- type ControlPlane
- type Credentials
- type CredentialsRotation
- type DNS
- type DNSDomain
- type DNSManagement
- type DNSProvider
- type DashboardGitHub
- type DashboardOIDC
- type DashboardTerminal
- type DashboardTerminalContainer
- type Deployment
- type DeploymentSpec
- type ETCD
- type ETCDEvents
- type ETCDMain
- type Extension
- type ExtensionDeploymentSpec
- type ExtensionHelm
- type ExtensionList
- type ExtensionSpec
- type ExtensionStatus
- type Garden
- type GardenList
- type GardenSpec
- type GardenStatus
- type Gardener
- type GardenerAPIServerConfig
- type GardenerAdmissionControllerConfig
- type GardenerControllerManagerConfig
- type GardenerDashboardConfig
- type GardenerDiscoveryServerConfig
- type GardenerSchedulerConfig
- type GroupResource
- type HighAvailability
- type Ingress
- type KubeAPIServerConfig
- type KubeControllerManagerConfig
- type Kubernetes
- type Maintenance
- type Networking
- type ProjectQuotaConfiguration
- type Provider
- type ResourceAdmissionConfiguration
- type ResourceAdmissionWebhookMode
- type ResourceLimit
- type RuntimeCluster
- type RuntimeNetworking
- type SNI
- type SettingLoadBalancerServices
- type SettingTopologyAwareRouting
- type SettingVerticalPodAutoscaler
- type Settings
- type Storage
- type VirtualCluster
- type Volume
- type WorkloadIdentityKeyRotation
Constants ¶
const ( // SecretManagerIdentityOperator is the identity for the secret manager used inside gardener-operator. SecretManagerIdentityOperator = "gardener-operator" // SecretNameCARuntime is a constant for the name of a secret containing the CA for the garden runtime cluster. SecretNameCARuntime = "ca-garden-runtime" // SecretNameCAGardener is a constant for the name of a Kubernetes secret object that contains the CA // certificate of the Gardener control plane. SecretNameCAGardener = "ca-gardener" // SecretNameWorkloadIdentityKey is a constant for the name of a Kubernetes secret object that contains a // PEM-encoded private RSA or ECDSA key used by the Gardener API Server to sign workload identity tokens. SecretNameWorkloadIdentityKey = "gardener-apiserver-workload-identity-signing-key" // LabelKeyGardenletAutoUpdates is a key for a label on seedmanagement.gardener.cloud/v1alpha1.Gardenlet resources. // If set to true, gardener-operator will automatically update the `.spec.deployment.helm.ociRepository.ref` field // to its own version after a successful operator.gardener.cloud/v1alpha1.Garden reconciliation. LabelKeyGardenletAutoUpdates = "operator.gardener.cloud/auto-update-gardenlet-helm-chart-ref" // OperationRotateWorkloadIdentityKeyStart is a constant for an annotation on a Garden indicating that the // rotation of the workload identity signing key shall be started. OperationRotateWorkloadIdentityKeyStart = "rotate-workload-identity-key-start" // OperationRotateWorkloadIdentityKeyComplete is a constant for an annotation on a Shoot indicating that the // rotation of the workload identity signing key shall be completed. OperationRotateWorkloadIdentityKeyComplete = "rotate-workload-identity-key-complete" )
const ( // ExtensionInstalled is a condition type for indicating whether the extension has been installed. ExtensionInstalled gardencorev1beta1.ConditionType = "Installed" // ExtensionRequiredRuntime is a condition type for indicating whether the extension is required in the garden runtime cluster. ExtensionRequiredRuntime gardencorev1beta1.ConditionType = "RequiredRuntime" )
const ( // RuntimeComponentsHealthy is a constant for a condition type indicating the runtime components health. RuntimeComponentsHealthy gardencorev1beta1.ConditionType = "RuntimeComponentsHealthy" // VirtualComponentsHealthy is a constant for a condition type indicating the virtual garden components health. VirtualComponentsHealthy gardencorev1beta1.ConditionType = "VirtualComponentsHealthy" // VirtualGardenAPIServerAvailable is a constant for a condition type indicating that the virtual garden's API server is available. VirtualGardenAPIServerAvailable gardencorev1beta1.ConditionType = "VirtualGardenAPIServerAvailable" // ObservabilityComponentsHealthy is a constant for a condition type indicating the health of observability components. ObservabilityComponentsHealthy gardencorev1beta1.ConditionType = v1beta1constants.ObservabilityComponentsHealthy )
const FinalizerName = "gardener.cloud/operator"
FinalizerName is the name of the finalizer used by gardener-operator.
Variables ¶
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 )
var AvailableOperationAnnotations = sets.New( v1beta1constants.GardenerOperationReconcile, v1beta1constants.OperationRotateCAStart, v1beta1constants.OperationRotateCAComplete, v1beta1constants.OperationRotateServiceAccountKeyStart, v1beta1constants.OperationRotateServiceAccountKeyComplete, v1beta1constants.OperationRotateETCDEncryptionKeyStart, v1beta1constants.OperationRotateETCDEncryptionKeyComplete, v1beta1constants.OperationRotateObservabilityCredentials, v1beta1constants.OperationRotateCredentialsStart, v1beta1constants.OperationRotateCredentialsComplete, OperationRotateWorkloadIdentityKeyStart, OperationRotateWorkloadIdentityKeyComplete, )
AvailableOperationAnnotations is the set of available operation annotations for Garden resources.
var SchemeGroupVersion = schema.GroupVersion{Group: operator.GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AdmissionDeploymentSpec ¶ added in v1.98.0
type AdmissionDeploymentSpec struct { // RuntimeCluster is the deployment configuration for the admission in the runtime cluster. The runtime deployment // is responsible for creating the admission controller in the runtime cluster. // +optional RuntimeCluster *DeploymentSpec `json:"runtimeCluster,omitempty"` // VirtualCluster is the deployment configuration for the admission deployment in the garden cluster. The garden deployment // installs necessary resources in the virtual garden cluster e.g. RBAC that are necessary for the admission controller. // +optional VirtualCluster *DeploymentSpec `json:"virtualCluster,omitempty"` // Values are the deployment values. The values will be applied to both admission deployments. // +optional Values *apiextensionsv1.JSON `json:"values,omitempty"` }
AdmissionDeploymentSpec contains the deployment specification for the admission controller of an extension.
func (*AdmissionDeploymentSpec) DeepCopy ¶ added in v1.98.0
func (in *AdmissionDeploymentSpec) DeepCopy() *AdmissionDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AdmissionDeploymentSpec.
func (*AdmissionDeploymentSpec) DeepCopyInto ¶ added in v1.98.0
func (in *AdmissionDeploymentSpec) DeepCopyInto(out *AdmissionDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuditWebhook ¶ added in v1.68.0
type AuditWebhook struct { // BatchMaxSize is the maximum size of a batch. // +kubebuilder:default=30 // +kubebuilder:validation:Minimum=1 // +optional BatchMaxSize *int32 `json:"batchMaxSize,omitempty"` // KubeconfigSecretName specifies the name of a secret containing the kubeconfig for this webhook. // +kubebuilder:validation:MinLength=1 KubeconfigSecretName string `json:"kubeconfigSecretName"` // Version is the API version to send and expect from the webhook. // +kubebuilder:default=audit.k8s.io/v1 // +kubebuilder:validation:Enum=audit.k8s.io/v1 // +optional Version *string `json:"version,omitempty"` }
AuditWebhook contains settings related to an audit webhook configuration.
func (*AuditWebhook) DeepCopy ¶ added in v1.68.0
func (in *AuditWebhook) DeepCopy() *AuditWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuditWebhook.
func (*AuditWebhook) DeepCopyInto ¶ added in v1.68.0
func (in *AuditWebhook) DeepCopyInto(out *AuditWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Authentication ¶ added in v1.68.0
type Authentication struct { // Webhook contains settings related to an authentication webhook configuration. // +optional Webhook *AuthenticationWebhook `json:"webhook,omitempty"` }
Authentication contains settings related to authentication.
func (*Authentication) DeepCopy ¶ added in v1.68.0
func (in *Authentication) DeepCopy() *Authentication
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Authentication.
func (*Authentication) DeepCopyInto ¶ added in v1.68.0
func (in *Authentication) DeepCopyInto(out *Authentication)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AuthenticationWebhook ¶ added in v1.68.0
type AuthenticationWebhook struct { // CacheTTL is the duration to cache responses from the webhook authenticator. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +optional CacheTTL *metav1.Duration `json:"cacheTTL,omitempty"` // KubeconfigSecretName specifies the name of a secret containing the kubeconfig for this webhook. // +kubebuilder:validation:MinLength=1 KubeconfigSecretName string `json:"kubeconfigSecretName"` // Version is the API version to send and expect from the webhook. // +kubebuilder:default=v1beta1 // +kubebuilder:validation:Enum=v1alpha1;v1beta1;v1 // +optional Version *string `json:"version,omitempty"` }
AuthenticationWebhook contains settings related to an authentication webhook configuration.
func (*AuthenticationWebhook) DeepCopy ¶ added in v1.68.0
func (in *AuthenticationWebhook) DeepCopy() *AuthenticationWebhook
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AuthenticationWebhook.
func (*AuthenticationWebhook) DeepCopyInto ¶ added in v1.68.0
func (in *AuthenticationWebhook) DeepCopyInto(out *AuthenticationWebhook)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Backup ¶ added in v1.62.0
type Backup struct { // Provider is a provider name. This field is immutable. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Provider is immutable" Provider string `json:"provider"` // BucketName is the name of the backup bucket. If not provided, gardener-operator attempts to manage a new bucket. // In this case, the cloud provider credentials provided in the SecretRef must have enough privileges for creating // and deleting buckets. // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="BucketName is immutable" // +optional BucketName *string `json:"bucketName,omitempty"` // ProviderConfig is the provider-specific configuration passed to BackupBucket resource. // +optional ProviderConfig *runtime.RawExtension `json:"providerConfig,omitempty"` // 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.LocalObjectReference `json:"secretRef"` }
Backup contains the object store configuration for backups for the virtual garden etcd.
func (*Backup) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Backup.
func (*Backup) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ControlPlane ¶ added in v1.63.0
type ControlPlane struct { // HighAvailability holds the configuration settings for high availability settings. // +optional HighAvailability *HighAvailability `json:"highAvailability,omitempty"` }
ControlPlane holds information about the general settings for the control plane of the virtual garden cluster.
func (*ControlPlane) DeepCopy ¶ added in v1.63.0
func (in *ControlPlane) DeepCopy() *ControlPlane
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ControlPlane.
func (*ControlPlane) DeepCopyInto ¶ added in v1.63.0
func (in *ControlPlane) DeepCopyInto(out *ControlPlane)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Credentials ¶ added in v1.62.0
type Credentials struct { // Rotation contains information about the credential rotations. // +optional Rotation *CredentialsRotation `json:"rotation,omitempty"` }
Credentials contains information about the virtual garden cluster credentials.
func (*Credentials) DeepCopy ¶ added in v1.62.0
func (in *Credentials) DeepCopy() *Credentials
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Credentials.
func (*Credentials) DeepCopyInto ¶ added in v1.62.0
func (in *Credentials) DeepCopyInto(out *Credentials)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type CredentialsRotation ¶ added in v1.62.0
type CredentialsRotation struct { // CertificateAuthorities contains information about the certificate authority credential rotation. // +optional CertificateAuthorities *gardencorev1beta1.CARotation `json:"certificateAuthorities,omitempty"` // ServiceAccountKey contains information about the service account key credential rotation. // +optional ServiceAccountKey *gardencorev1beta1.ServiceAccountKeyRotation `json:"serviceAccountKey,omitempty"` // ETCDEncryptionKey contains information about the ETCD encryption key credential rotation. // +optional ETCDEncryptionKey *gardencorev1beta1.ETCDEncryptionKeyRotation `json:"etcdEncryptionKey,omitempty"` // Observability contains information about the observability credential rotation. // +optional Observability *gardencorev1beta1.ObservabilityRotation `json:"observability,omitempty"` // WorkloadIdentityKey contains information about the workload identity key credential rotation. // +optional WorkloadIdentityKey *WorkloadIdentityKeyRotation `json:"workloadIdentityKey,omitempty"` }
CredentialsRotation contains information about the rotation of credentials.
func (*CredentialsRotation) DeepCopy ¶ added in v1.62.0
func (in *CredentialsRotation) DeepCopy() *CredentialsRotation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new CredentialsRotation.
func (*CredentialsRotation) DeepCopyInto ¶ added in v1.62.0
func (in *CredentialsRotation) DeepCopyInto(out *CredentialsRotation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNS ¶ added in v1.68.0
type DNS struct { // Domains are the external domains of the virtual garden cluster. // The first given domain in this list is immutable. // +kubebuilder:validation:MinItems=1 Domains []DNSDomain `json:"domains,omitempty"` }
DNS holds information about DNS settings.
func (*DNS) DeepCopy ¶ added in v1.68.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNS.
func (*DNS) DeepCopyInto ¶ added in v1.68.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSDomain ¶ added in v1.108.0
type DNSDomain struct { // Name is the domain name. // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Provider is the name of the DNS provider as declared in the '.spec.dns.providers' section. // It is only optional, if the `.spec.dns` section is not provided at all. // +optional Provider *string `json:"provider,omitempty"` }
DNSDomain defines a DNS domain with optional provider.
func (*DNSDomain) DeepCopy ¶ added in v1.108.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSDomain.
func (*DNSDomain) DeepCopyInto ¶ added in v1.108.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSManagement ¶ added in v1.108.0
type DNSManagement struct { // Providers is a list of DNS providers. // +kubebuilder:validation:MinItems=1 Providers []DNSProvider `json:"providers"` }
DNSManagement contains specifications of DNS providers.
func (*DNSManagement) DeepCopy ¶ added in v1.108.0
func (in *DNSManagement) DeepCopy() *DNSManagement
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSManagement.
func (*DNSManagement) DeepCopyInto ¶ added in v1.108.0
func (in *DNSManagement) DeepCopyInto(out *DNSManagement)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DNSProvider ¶ added in v1.108.0
type DNSProvider struct { // Name is the name of the DNS provider. // +kubebuilder:validation:MinLength=1 Name string `json:"name"` // Type is the type of the DNS provider. // +kubebuilder:validation:MinLength=1 Type string `json:"type"` // Config is the provider-specific configuration passed to DNSRecord resources. // +optional ProviderConfig *runtime.RawExtension `json:"providerConfig,omitempty"` // SecretRef is a reference to a Secret object containing the DNS provider credentials. SecretRef corev1.LocalObjectReference `json:"secretRef"` }
DNSProvider contains the configuration for a DNS provider.
func (*DNSProvider) DeepCopy ¶ added in v1.108.0
func (in *DNSProvider) DeepCopy() *DNSProvider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DNSProvider.
func (*DNSProvider) DeepCopyInto ¶ added in v1.108.0
func (in *DNSProvider) DeepCopyInto(out *DNSProvider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DashboardGitHub ¶ added in v1.94.0
type DashboardGitHub struct { // APIURL is the URL to the GitHub API. // +kubebuilder:default=`https://api.github.com` // +kubebuilder:validation:MinLength=1 APIURL string `json:"apiURL"` // Organisation is the name of the GitHub organisation. // +kubebuilder:validation:MinLength=1 Organisation string `json:"organisation"` // Repository is the name of the GitHub repository. // +kubebuilder:validation:MinLength=1 Repository string `json:"repository"` // SecretRef is the reference to a secret in the garden namespace containing the GitHub credentials. SecretRef corev1.LocalObjectReference `json:"secretRef"` // PollInterval is the interval of how often the GitHub API is polled for issue updates. This field is used as a // fallback mechanism to ensure state synchronization, even when there is a GitHub webhook configuration. If a // webhook event is missed or not successfully delivered, the polling will help catch up on any missed updates. // If this field is not provided and there is no 'webhookSecret' key in the referenced secret, it will be // implicitly defaulted to `15m`. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +optional PollInterval *metav1.Duration `json:"pollInterval,omitempty"` }
DashboardGitHub contains configuration for the GitHub ticketing feature.
func (*DashboardGitHub) DeepCopy ¶ added in v1.94.0
func (in *DashboardGitHub) DeepCopy() *DashboardGitHub
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardGitHub.
func (*DashboardGitHub) DeepCopyInto ¶ added in v1.94.0
func (in *DashboardGitHub) DeepCopyInto(out *DashboardGitHub)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DashboardOIDC ¶ added in v1.94.0
type DashboardOIDC struct { // SessionLifetime is the maximum duration of a session. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +optional SessionLifetime *metav1.Duration `json:"sessionLifetime,omitempty"` // AdditionalScopes is the list of additional OIDC scopes. // +optional AdditionalScopes []string `json:"additionalScopes,omitempty"` // SecretRef is the reference to a secret in the garden namespace containing the OIDC client ID and secret for the dashboard. SecretRef corev1.LocalObjectReference `json:"secretRef"` }
DashboardOIDC contains configuration for the OIDC settings.
func (*DashboardOIDC) DeepCopy ¶ added in v1.94.0
func (in *DashboardOIDC) DeepCopy() *DashboardOIDC
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardOIDC.
func (*DashboardOIDC) DeepCopyInto ¶ added in v1.94.0
func (in *DashboardOIDC) DeepCopyInto(out *DashboardOIDC)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DashboardTerminal ¶ added in v1.94.0
type DashboardTerminal struct { // Container contains configuration for the dashboard terminal container. Container DashboardTerminalContainer `json:"container"` // AllowedHosts should consist of permitted hostnames (without the scheme) for terminal connections. // It is important to consider that the usage of wildcards follows the rules defined by the content security policy. // '*.seed.local.gardener.cloud', or '*.other-seeds.local.gardener.cloud'. For more information, see // https://github.com/gardener/dashboard/blob/master/docs/operations/webterminals.md#allowlist-for-hosts. // +optional AllowedHosts []string `json:"allowedHosts,omitempty"` }
DashboardTerminal contains configuration for the terminal settings.
func (*DashboardTerminal) DeepCopy ¶ added in v1.94.0
func (in *DashboardTerminal) DeepCopy() *DashboardTerminal
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardTerminal.
func (*DashboardTerminal) DeepCopyInto ¶ added in v1.94.0
func (in *DashboardTerminal) DeepCopyInto(out *DashboardTerminal)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DashboardTerminalContainer ¶ added in v1.94.0
type DashboardTerminalContainer struct { // Image is the container image for the dashboard terminal container. Image string `json:"image"` // Description is a description for the dashboard terminal container with hints for the user. // +optional Description *string `json:"description,omitempty"` }
DashboardTerminalContainer contains configuration for the dashboard terminal container.
func (*DashboardTerminalContainer) DeepCopy ¶ added in v1.94.0
func (in *DashboardTerminalContainer) DeepCopy() *DashboardTerminalContainer
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DashboardTerminalContainer.
func (*DashboardTerminalContainer) DeepCopyInto ¶ added in v1.94.0
func (in *DashboardTerminalContainer) DeepCopyInto(out *DashboardTerminalContainer)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Deployment ¶ added in v1.98.0
type Deployment struct { // ExtensionDeployment contains the deployment configuration an extension. // +optional ExtensionDeployment *ExtensionDeploymentSpec `json:"extension,omitempty"` // AdmissionDeployment contains the deployment configuration for an admission controller. // +optional AdmissionDeployment *AdmissionDeploymentSpec `json:"admission,omitempty"` }
Deployment specifies how an extension can be installed for a Gardener landscape. It includes the specification for installing an extension and/or an admission controller.
func (*Deployment) DeepCopy ¶ added in v1.98.0
func (in *Deployment) DeepCopy() *Deployment
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployment.
func (*Deployment) DeepCopyInto ¶ added in v1.98.0
func (in *Deployment) DeepCopyInto(out *Deployment)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentSpec ¶ added in v1.98.0
type DeploymentSpec struct { // Helm contains the specification for a Helm deployment. Helm *ExtensionHelm `json:"helm,omitempty"` }
DeploymentSpec is the specification for the deployment of a component.
func (*DeploymentSpec) DeepCopy ¶ added in v1.98.0
func (in *DeploymentSpec) DeepCopy() *DeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentSpec.
func (*DeploymentSpec) DeepCopyInto ¶ added in v1.98.0
func (in *DeploymentSpec) DeepCopyInto(out *DeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCD ¶ added in v1.62.0
type ETCD struct { // Main contains configuration for the main etcd. // +optional Main *ETCDMain `json:"main,omitempty"` // Events contains configuration for the events etcd. // +optional Events *ETCDEvents `json:"events,omitempty"` }
ETCD contains configuration for the etcds of the virtual garden cluster.
func (*ETCD) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCD.
func (*ETCD) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDEvents ¶ added in v1.62.0
type ETCDEvents struct { // Storage contains storage configuration. // +optional Storage *Storage `json:"storage,omitempty"` }
ETCDEvents contains configuration for the events etcd.
func (*ETCDEvents) DeepCopy ¶ added in v1.62.0
func (in *ETCDEvents) DeepCopy() *ETCDEvents
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDEvents.
func (*ETCDEvents) DeepCopyInto ¶ added in v1.62.0
func (in *ETCDEvents) DeepCopyInto(out *ETCDEvents)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ETCDMain ¶ added in v1.62.0
type ETCDMain struct { // Backup contains the object store configuration for backups for the virtual garden etcd. // +optional Backup *Backup `json:"backup,omitempty"` // Storage contains storage configuration. // +optional Storage *Storage `json:"storage,omitempty"` }
ETCDMain contains configuration for the main etcd.
func (*ETCDMain) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ETCDMain.
func (*ETCDMain) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Extension ¶ added in v1.98.0
type Extension struct { metav1.TypeMeta `json:",inline"` // Standard object metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec contains the specification of this extension. Spec ExtensionSpec `json:"spec,omitempty"` // Status contains the status of this extension. Status ExtensionStatus `json:"status,omitempty"` }
Extension describes a Gardener extension.
func (*Extension) DeepCopy ¶ added in v1.98.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Extension.
func (*Extension) DeepCopyInto ¶ added in v1.98.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Extension) DeepCopyObject ¶ added in v1.98.0
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExtensionDeploymentSpec ¶ added in v1.98.0
type ExtensionDeploymentSpec struct { // DeploymentSpec is the deployment configuration for the extension. // +optional DeploymentSpec `json:",inline"` // Values are the deployment values used in the creation of the ControllerDeployment in the virtual garden cluster. // +optional Values *apiextensionsv1.JSON `json:"values,omitempty"` // RuntimeClusterValues are the deployment values for the extension deployment running in the runtime garden cluster. // +optional RuntimeClusterValues *apiextensionsv1.JSON `json:"runtimeClusterValues,omitempty"` // Policy controls how the controller is deployed. It defaults to 'OnDemand'. // +optional Policy *gardencorev1beta1.ControllerDeploymentPolicy `json:"policy,omitempty"` // 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. // +optional SeedSelector *metav1.LabelSelector `json:"seedSelector,omitempty"` }
ExtensionDeploymentSpec specifies how to install the extension in a gardener landscape. The installation is split into two parts: - installing the extension in the virtual garden cluster by creating the ControllerRegistration and ControllerDeployment - installing the extension in the runtime cluster (if necessary).
func (*ExtensionDeploymentSpec) DeepCopy ¶ added in v1.98.0
func (in *ExtensionDeploymentSpec) DeepCopy() *ExtensionDeploymentSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionDeploymentSpec.
func (*ExtensionDeploymentSpec) DeepCopyInto ¶ added in v1.98.0
func (in *ExtensionDeploymentSpec) DeepCopyInto(out *ExtensionDeploymentSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionHelm ¶ added in v1.98.0
type ExtensionHelm struct { // OCIRepository defines where to pull the chart from. // +optional OCIRepository *gardencorev1.OCIRepository `json:"ociRepository,omitempty"` }
ExtensionHelm is the configuration for a helm deployment.
func (*ExtensionHelm) DeepCopy ¶ added in v1.98.0
func (in *ExtensionHelm) DeepCopy() *ExtensionHelm
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionHelm.
func (*ExtensionHelm) DeepCopyInto ¶ added in v1.98.0
func (in *ExtensionHelm) DeepCopyInto(out *ExtensionHelm)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionList ¶ added in v1.98.0
type ExtensionList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // Items is the list of Extension. Items []Extension `json:"items"` }
ExtensionList is a list of Extension resources.
func (*ExtensionList) DeepCopy ¶ added in v1.98.0
func (in *ExtensionList) DeepCopy() *ExtensionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionList.
func (*ExtensionList) DeepCopyInto ¶ added in v1.98.0
func (in *ExtensionList) DeepCopyInto(out *ExtensionList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ExtensionList) DeepCopyObject ¶ added in v1.98.0
func (in *ExtensionList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type ExtensionSpec ¶ added in v1.98.0
type ExtensionSpec struct { // Resources is a list of combinations of kinds (DNSRecord, Backupbucket, ...) and their actual types // (aws-route53, gcp). // +optional Resources []gardencorev1beta1.ControllerResource `json:"resources,omitempty"` // Deployment contains deployment configuration for an extension and it's admission controller. // +optional Deployment *Deployment `json:"deployment,omitempty"` }
ExtensionSpec contains the specification of a Gardener extension.
func (*ExtensionSpec) DeepCopy ¶ added in v1.98.0
func (in *ExtensionSpec) DeepCopy() *ExtensionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionSpec.
func (*ExtensionSpec) DeepCopyInto ¶ added in v1.98.0
func (in *ExtensionSpec) DeepCopyInto(out *ExtensionSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ExtensionStatus ¶ added in v1.98.0
type ExtensionStatus struct { // ObservedGeneration is the most recent generation observed for this resource. // +optional ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Conditions represents the latest available observations of an Extension's current state. // +patchMergeKey=type // +patchStrategy=merge // +optional Conditions []gardencorev1beta1.Condition `json:"conditions,omitempty" patchStrategy:"merge" patchMergeKey:"type"` // ProviderStatus contains type-specific status. // +optional ProviderStatus *runtime.RawExtension `json:"providerStatus,omitempty"` }
ExtensionStatus is the status of a Gardener extension.
func (*ExtensionStatus) DeepCopy ¶ added in v1.98.0
func (in *ExtensionStatus) DeepCopy() *ExtensionStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ExtensionStatus.
func (*ExtensionStatus) DeepCopyInto ¶ added in v1.98.0
func (in *ExtensionStatus) DeepCopyInto(out *ExtensionStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Garden ¶
type Garden struct { metav1.TypeMeta `json:",inline"` // Standard object metadata. metav1.ObjectMeta `json:"metadata,omitempty"` // Spec contains the specification of this garden. Spec GardenSpec `json:"spec,omitempty"` // Status contains the status of this garden. Status GardenStatus `json:"status,omitempty"` }
Garden describes a list of gardens.
func (*Garden) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Garden.
func (*Garden) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Garden) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GardenList ¶
type GardenList struct { metav1.TypeMeta `json:",inline"` // +optional metav1.ListMeta `json:"metadata,omitempty"` // Items is the list of Garden. Items []Garden `json:"items"` }
GardenList is a list of Garden resources.
func (*GardenList) DeepCopy ¶
func (in *GardenList) DeepCopy() *GardenList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenList.
func (*GardenList) DeepCopyInto ¶
func (in *GardenList) DeepCopyInto(out *GardenList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*GardenList) DeepCopyObject ¶
func (in *GardenList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type GardenSpec ¶
type GardenSpec struct { // DNS contains specifications of DNS providers. // +optional DNS *DNSManagement `json:"dns,omitempty"` // RuntimeCluster contains configuration for the runtime cluster. RuntimeCluster RuntimeCluster `json:"runtimeCluster"` // VirtualCluster contains configuration for the virtual cluster. VirtualCluster VirtualCluster `json:"virtualCluster"` }
GardenSpec contains the specification of a garden environment.
func (*GardenSpec) DeepCopy ¶
func (in *GardenSpec) DeepCopy() *GardenSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenSpec.
func (*GardenSpec) DeepCopyInto ¶
func (in *GardenSpec) DeepCopyInto(out *GardenSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenStatus ¶
type GardenStatus struct { // Gardener holds information about the Gardener which last acted on the Garden. // +optional Gardener *gardencorev1beta1.Gardener `json:"gardener,omitempty"` // Conditions is a list of conditions. Conditions []gardencorev1beta1.Condition `json:"conditions,omitempty"` // LastOperation holds information about the last operation on the Garden. // +optional LastOperation *gardencorev1beta1.LastOperation `json:"lastOperation,omitempty"` // ObservedGeneration is the most recent generation observed for this resource. ObservedGeneration int64 `json:"observedGeneration,omitempty"` // Credentials contains information about the virtual garden cluster credentials. // +optional Credentials *Credentials `json:"credentials,omitempty"` // EncryptedResources is the list of resources which are currently encrypted in the virtual garden by the virtual kube-apiserver. // Resources which are encrypted by default will not appear here. // See https://github.com/gardener/gardener/blob/master/docs/concepts/operator.md#etcd-encryption-config for more details. // +optional EncryptedResources []string `json:"encryptedResources,omitempty"` }
GardenStatus is the status of a garden environment.
func (*GardenStatus) DeepCopy ¶
func (in *GardenStatus) DeepCopy() *GardenStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenStatus.
func (*GardenStatus) DeepCopyInto ¶
func (in *GardenStatus) DeepCopyInto(out *GardenStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Gardener ¶ added in v1.76.0
type Gardener struct { // ClusterIdentity is the identity of the garden cluster. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" ClusterIdentity string `json:"clusterIdentity"` // APIServer contains configuration settings for the gardener-apiserver. // +optional APIServer *GardenerAPIServerConfig `json:"gardenerAPIServer,omitempty"` // AdmissionController contains configuration settings for the gardener-admission-controller. // +optional AdmissionController *GardenerAdmissionControllerConfig `json:"gardenerAdmissionController,omitempty"` // ControllerManager contains configuration settings for the gardener-controller-manager. // +optional ControllerManager *GardenerControllerManagerConfig `json:"gardenerControllerManager,omitempty"` // Scheduler contains configuration settings for the gardener-scheduler. // +optional Scheduler *GardenerSchedulerConfig `json:"gardenerScheduler,omitempty"` // Dashboard contains configuration settings for the gardener-dashboard. // +optional Dashboard *GardenerDashboardConfig `json:"gardenerDashboard,omitempty"` // DiscoveryServer contains configuration settings for the gardener-discovery-server. // +optional DiscoveryServer *GardenerDiscoveryServerConfig `json:"gardenerDiscoveryServer,omitempty"` }
Gardener contains the configuration settings for the Gardener components.
func (*Gardener) DeepCopy ¶ added in v1.76.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Gardener.
func (*Gardener) DeepCopyInto ¶ added in v1.76.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerAPIServerConfig ¶ added in v1.76.0
type GardenerAPIServerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // AdmissionPlugins contains the list of user-defined admission plugins (additional to those managed by Gardener), // and, if desired, the corresponding configuration. // +optional AdmissionPlugins []gardencorev1beta1.AdmissionPlugin `json:"admissionPlugins,omitempty"` // AuditConfig contains configuration settings for the audit of the kube-apiserver. // +optional AuditConfig *gardencorev1beta1.AuditConfig `json:"auditConfig,omitempty"` // AuditWebhook contains settings related to an audit webhook configuration. // +optional AuditWebhook *AuditWebhook `json:"auditWebhook,omitempty"` // Logging contains configuration for the log level and HTTP access logs. // +optional Logging *gardencorev1beta1.APIServerLogging `json:"logging,omitempty"` // Requests contains configuration for request-specific settings for the kube-apiserver. // +optional Requests *gardencorev1beta1.APIServerRequests `json:"requests,omitempty"` // WatchCacheSizes contains configuration of the API server's watch cache sizes. // Configuring these flags might be useful for large-scale Garden 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). // +optional WatchCacheSizes *gardencorev1beta1.WatchCacheSizes `json:"watchCacheSizes,omitempty"` // EncryptionConfig contains customizable encryption configuration of the Gardener API server. // +optional EncryptionConfig *gardencorev1beta1.EncryptionConfig `json:"encryptionConfig,omitempty"` }
GardenerAPIServerConfig contains configuration settings for the gardener-apiserver.
func (*GardenerAPIServerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerAPIServerConfig) DeepCopy() *GardenerAPIServerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerAPIServerConfig.
func (*GardenerAPIServerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerAPIServerConfig) DeepCopyInto(out *GardenerAPIServerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerAdmissionControllerConfig ¶ added in v1.77.0
type GardenerAdmissionControllerConfig struct { // LogLevel is the configured log level for the gardener-admission-controller. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` // ResourceAdmissionConfiguration is the configuration for resource size restrictions for arbitrary Group-Version-Kinds. // +optional ResourceAdmissionConfiguration *ResourceAdmissionConfiguration `json:"resourceAdmissionConfiguration,omitempty"` }
GardenerAdmissionControllerConfig contains configuration settings for the gardener-admission-controller.
func (*GardenerAdmissionControllerConfig) DeepCopy ¶ added in v1.77.0
func (in *GardenerAdmissionControllerConfig) DeepCopy() *GardenerAdmissionControllerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerAdmissionControllerConfig.
func (*GardenerAdmissionControllerConfig) DeepCopyInto ¶ added in v1.77.0
func (in *GardenerAdmissionControllerConfig) DeepCopyInto(out *GardenerAdmissionControllerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerControllerManagerConfig ¶ added in v1.76.0
type GardenerControllerManagerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // DefaultProjectQuotas is the default configuration matching projects are set up with if a quota is not already // specified. // +optional DefaultProjectQuotas []ProjectQuotaConfiguration `json:"defaultProjectQuotas,omitempty"` // LogLevel is the configured log level for the gardener-controller-manager. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` }
GardenerControllerManagerConfig contains configuration settings for the gardener-controller-manager.
func (*GardenerControllerManagerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerControllerManagerConfig) DeepCopy() *GardenerControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerControllerManagerConfig.
func (*GardenerControllerManagerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerControllerManagerConfig) DeepCopyInto(out *GardenerControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerDashboardConfig ¶ added in v1.94.0
type GardenerDashboardConfig struct { // EnableTokenLogin specifies whether it is possible to log into the dashboard with a JWT token. If disabled, OIDC // must be configured. // +kubebuilder:default=true // +optional EnableTokenLogin *bool `json:"enableTokenLogin,omitempty"` // FrontendConfigMapRef is the reference to a ConfigMap in the garden namespace containing the frontend // configuration. // +optional FrontendConfigMapRef *corev1.LocalObjectReference `json:"frontendConfigMapRef,omitempty"` // AssetsConfigMapRef is the reference to a ConfigMap in the garden namespace containing the assets (logos/icons). // +optional AssetsConfigMapRef *corev1.LocalObjectReference `json:"assetsConfigMapRef,omitempty"` // GitHub contains configuration for the GitHub ticketing feature. // +optional GitHub *DashboardGitHub `json:"gitHub,omitempty"` // LogLevel is the configured log level. Must be one of [trace,debug,info,warn,error]. // Defaults to info. // +kubebuilder:validation:Enum=trace;debug;info;warn;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` // OIDC contains configuration for the OIDC provider. This field must be provided when EnableTokenLogin is false. // +optional OIDC *DashboardOIDC `json:"oidcConfig,omitempty"` // Terminal contains configuration for the terminal settings. // +optional Terminal *DashboardTerminal `json:"terminal,omitempty"` }
GardenerDashboardConfig contains configuration settings for the gardener-dashboard.
func (*GardenerDashboardConfig) DeepCopy ¶ added in v1.94.0
func (in *GardenerDashboardConfig) DeepCopy() *GardenerDashboardConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerDashboardConfig.
func (*GardenerDashboardConfig) DeepCopyInto ¶ added in v1.94.0
func (in *GardenerDashboardConfig) DeepCopyInto(out *GardenerDashboardConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerDiscoveryServerConfig ¶ added in v1.96.0
type GardenerDiscoveryServerConfig struct{}
GardenerDiscoveryServerConfig contains configuration settings for the gardener-discovery-server.
func (*GardenerDiscoveryServerConfig) DeepCopy ¶ added in v1.96.0
func (in *GardenerDiscoveryServerConfig) DeepCopy() *GardenerDiscoveryServerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerDiscoveryServerConfig.
func (*GardenerDiscoveryServerConfig) DeepCopyInto ¶ added in v1.96.0
func (in *GardenerDiscoveryServerConfig) DeepCopyInto(out *GardenerDiscoveryServerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GardenerSchedulerConfig ¶ added in v1.76.0
type GardenerSchedulerConfig struct { gardencorev1beta1.KubernetesConfig `json:",inline"` // LogLevel is the configured log level for the gardener-scheduler. Must be one of [info,debug,error]. // Defaults to info. // +kubebuilder:validation:Enum=info;debug;error // +kubebuilder:default=info // +optional LogLevel *string `json:"logLevel,omitempty"` }
GardenerSchedulerConfig contains configuration settings for the gardener-scheduler.
func (*GardenerSchedulerConfig) DeepCopy ¶ added in v1.76.0
func (in *GardenerSchedulerConfig) DeepCopy() *GardenerSchedulerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GardenerSchedulerConfig.
func (*GardenerSchedulerConfig) DeepCopyInto ¶ added in v1.76.0
func (in *GardenerSchedulerConfig) DeepCopyInto(out *GardenerSchedulerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type GroupResource ¶ added in v1.68.0
type GroupResource struct { // Group is the API group name. // +kubebuilder:validation:MinLength=1 Group string `json:"group"` // Resource is the resource name. // +kubebuilder:validation:MinLength=1 Resource string `json:"resource"` }
GroupResource contains a list of resources which should be stored in etcd-events instead of etcd-main.
func (*GroupResource) DeepCopy ¶ added in v1.68.0
func (in *GroupResource) DeepCopy() *GroupResource
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new GroupResource.
func (*GroupResource) DeepCopyInto ¶ added in v1.68.0
func (in *GroupResource) DeepCopyInto(out *GroupResource)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type HighAvailability ¶ added in v1.63.0
type HighAvailability struct{}
HighAvailability specifies the configuration settings for high availability for a resource.
func (*HighAvailability) DeepCopy ¶ added in v1.63.0
func (in *HighAvailability) DeepCopy() *HighAvailability
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new HighAvailability.
func (*HighAvailability) DeepCopyInto ¶ added in v1.63.0
func (in *HighAvailability) DeepCopyInto(out *HighAvailability)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Ingress ¶ added in v1.89.0
type Ingress struct { // Domains specify the ingress domains of the cluster pointing to the ingress controller endpoint. They will be used // to construct ingress URLs for system applications running in runtime cluster. // +kubebuilder:validation:MinItems=1 Domains []DNSDomain `json:"domains,omitempty"` // Controller configures a Gardener managed Ingress Controller listening on the ingressDomain. Controller gardencorev1beta1.IngressController `json:"controller"` }
Ingress configures the Ingress specific settings of the runtime cluster.
func (*Ingress) DeepCopy ¶ added in v1.89.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Ingress.
func (*Ingress) DeepCopyInto ¶ added in v1.89.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type KubeAPIServerConfig ¶ added in v1.68.0
type KubeAPIServerConfig struct { // KubeAPIServerConfig contains all configuration values not specific to the virtual garden cluster. // +optional *gardencorev1beta1.KubeAPIServerConfig `json:",inline"` // AuditWebhook contains settings related to an audit webhook configuration. // +optional AuditWebhook *AuditWebhook `json:"auditWebhook,omitempty"` // Authentication contains settings related to authentication. // +optional Authentication *Authentication `json:"authentication,omitempty"` // ResourcesToStoreInETCDEvents contains a list of resources which should be stored in etcd-events instead of // etcd-main. The 'events' resource is always stored in etcd-events. Note that adding or removing resources from // this list will not migrate them automatically from the etcd-main to etcd-events or vice versa. // +optional ResourcesToStoreInETCDEvents []GroupResource `json:"resourcesToStoreInETCDEvents,omitempty"` // SNI contains configuration options for the TLS SNI settings. // +optional SNI *SNI `json:"sni,omitempty"` }
KubeAPIServerConfig contains configuration settings for the kube-apiserver.
func (*KubeAPIServerConfig) DeepCopy ¶ added in v1.68.0
func (in *KubeAPIServerConfig) DeepCopy() *KubeAPIServerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeAPIServerConfig.
func (*KubeAPIServerConfig) DeepCopyInto ¶ added in v1.68.0
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 ¶ added in v1.71.0
type KubeControllerManagerConfig struct { // KubeControllerManagerConfig contains all configuration values not specific to the virtual garden cluster. // +optional *gardencorev1beta1.KubeControllerManagerConfig `json:",inline"` // CertificateSigningDuration is the maximum length of duration signed certificates will be given. Individual CSRs // may request shorter certs by setting `spec.expirationSeconds`. // +kubebuilder:validation:Type=string // +kubebuilder:validation:Pattern="^([0-9]+(\\.[0-9]+)?(ns|us|µs|ms|s|m|h))+$" // +kubebuilder:default=`48h` // +optional CertificateSigningDuration *metav1.Duration `json:"certificateSigningDuration,omitempty"` }
KubeControllerManagerConfig contains configuration settings for the kube-controller-manager.
func (*KubeControllerManagerConfig) DeepCopy ¶ added in v1.71.0
func (in *KubeControllerManagerConfig) DeepCopy() *KubeControllerManagerConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new KubeControllerManagerConfig.
func (*KubeControllerManagerConfig) DeepCopyInto ¶ added in v1.71.0
func (in *KubeControllerManagerConfig) DeepCopyInto(out *KubeControllerManagerConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Kubernetes ¶ added in v1.68.0
type Kubernetes struct { // KubeAPIServer contains configuration settings for the kube-apiserver. // +optional KubeAPIServer *KubeAPIServerConfig `json:"kubeAPIServer,omitempty"` // KubeControllerManager contains configuration settings for the kube-controller-manager. // +optional KubeControllerManager *KubeControllerManagerConfig `json:"kubeControllerManager,omitempty"` // Version is the semantic Kubernetes version to use for the virtual garden cluster. // +kubebuilder:validation:MinLength=1 Version string `json:"version"` }
Kubernetes contains the version and configuration options for the Kubernetes components of the virtual garden cluster.
func (*Kubernetes) DeepCopy ¶ added in v1.68.0
func (in *Kubernetes) DeepCopy() *Kubernetes
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Kubernetes.
func (*Kubernetes) DeepCopyInto ¶ added in v1.68.0
func (in *Kubernetes) DeepCopyInto(out *Kubernetes)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Maintenance ¶ added in v1.62.0
type Maintenance struct { // TimeWindow contains information about the time window for maintenance operations. TimeWindow gardencorev1beta1.MaintenanceTimeWindow `json:"timeWindow"` }
Maintenance contains information about the time window for maintenance operations.
func (*Maintenance) DeepCopy ¶ added in v1.62.0
func (in *Maintenance) DeepCopy() *Maintenance
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Maintenance.
func (*Maintenance) DeepCopyInto ¶ added in v1.62.0
func (in *Maintenance) DeepCopyInto(out *Maintenance)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Networking ¶ added in v1.68.0
type Networking struct { // Services is the CIDR of the service network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Services string `json:"services"` }
Networking defines networking parameters for the virtual garden cluster.
func (*Networking) DeepCopy ¶ added in v1.68.0
func (in *Networking) DeepCopy() *Networking
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Networking.
func (*Networking) DeepCopyInto ¶ added in v1.68.0
func (in *Networking) DeepCopyInto(out *Networking)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ProjectQuotaConfiguration ¶ added in v1.76.0
type ProjectQuotaConfiguration struct { // Config is the quota specification used for the project set-up. // Only v1.ResourceQuota resources are supported. Config runtime.RawExtension `json:"config"` // ProjectSelector is an optional setting to select the projects considered for quotas. // Defaults to empty LabelSelector, which matches all projects. // +optional ProjectSelector *metav1.LabelSelector `json:"projectSelector,omitempty"` }
ProjectQuotaConfiguration defines quota configurations.
func (*ProjectQuotaConfiguration) DeepCopy ¶ added in v1.76.0
func (in *ProjectQuotaConfiguration) DeepCopy() *ProjectQuotaConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ProjectQuotaConfiguration.
func (*ProjectQuotaConfiguration) DeepCopyInto ¶ added in v1.76.0
func (in *ProjectQuotaConfiguration) DeepCopyInto(out *ProjectQuotaConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Provider ¶
type Provider struct { // Region is the region the cluster is deployed to. // +optional Region *string `json:"region,omitempty"` // Zones is the list of availability zones the cluster is deployed to. // +optional Zones []string `json:"zones,omitempty"` }
Provider defines the provider-specific information for this cluster.
func (*Provider) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Provider.
func (*Provider) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceAdmissionConfiguration ¶ added in v1.77.0
type ResourceAdmissionConfiguration struct { // Limits contains configuration for resources which are subjected to size limitations. Limits []ResourceLimit `json:"limits"` // UnrestrictedSubjects contains references to users, groups, or service accounts which aren't subjected to any resource size limit. // +optional UnrestrictedSubjects []rbacv1.Subject `json:"unrestrictedSubjects,omitempty"` // OperationMode specifies the mode the webhooks operates in. Allowed values are "block" and "log". Defaults to "block". // +optional OperationMode *ResourceAdmissionWebhookMode `json:"operationMode,omitempty"` }
ResourceAdmissionConfiguration contains settings about arbitrary kinds and the size each resource should have at most.
func (*ResourceAdmissionConfiguration) DeepCopy ¶ added in v1.77.0
func (in *ResourceAdmissionConfiguration) DeepCopy() *ResourceAdmissionConfiguration
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceAdmissionConfiguration.
func (*ResourceAdmissionConfiguration) DeepCopyInto ¶ added in v1.77.0
func (in *ResourceAdmissionConfiguration) DeepCopyInto(out *ResourceAdmissionConfiguration)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceAdmissionWebhookMode ¶ added in v1.77.0
type ResourceAdmissionWebhookMode string
ResourceAdmissionWebhookMode is an alias type for the resource admission webhook mode.
type ResourceLimit ¶ added in v1.77.0
type ResourceLimit struct { // APIGroups is the name of the APIGroup that contains the limited resource. WildcardAll represents all groups. // +optional APIGroups []string `json:"apiGroups,omitempty"` // APIVersions is the version of the resource. WildcardAll represents all versions. // +optional APIVersions []string `json:"apiVersions,omitempty"` // Resources is the name of the resource this rule applies to. WildcardAll represents all resources. Resources []string `json:"resources"` // Size specifies the imposed limit. Size resource.Quantity `json:"size"` }
ResourceLimit contains settings about a kind and the size each resource should have at most.
func (*ResourceLimit) DeepCopy ¶ added in v1.77.0
func (in *ResourceLimit) DeepCopy() *ResourceLimit
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceLimit.
func (*ResourceLimit) DeepCopyInto ¶ added in v1.77.0
func (in *ResourceLimit) DeepCopyInto(out *ResourceLimit)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeCluster ¶
type RuntimeCluster struct { // Ingress configures Ingress specific settings for the Garden cluster. Ingress Ingress `json:"ingress"` // Networking defines the networking configuration of the runtime cluster. Networking RuntimeNetworking `json:"networking"` // Provider defines the provider-specific information for this cluster. Provider Provider `json:"provider"` // Settings contains certain settings for this cluster. // +optional Settings *Settings `json:"settings,omitempty"` // Volume contains settings for persistent volumes created in the runtime cluster. // +optional Volume *Volume `json:"volume,omitempty"` }
RuntimeCluster contains configuration for the runtime cluster.
func (*RuntimeCluster) DeepCopy ¶
func (in *RuntimeCluster) DeepCopy() *RuntimeCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeCluster.
func (*RuntimeCluster) DeepCopyInto ¶
func (in *RuntimeCluster) DeepCopyInto(out *RuntimeCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type RuntimeNetworking ¶ added in v1.71.0
type RuntimeNetworking struct { // Nodes is the CIDR of the node network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" // +optional Nodes *string `json:"nodes,omitempty"` // Pods is the CIDR of the pod network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Pods string `json:"pods"` // Services is the CIDR of the service network. This field is immutable. // +kubebuilder:validation:MinLength=1 // +kubebuilder:validation:XValidation:rule="self == oldSelf",message="Value is immutable" Services string `json:"services"` // BlockCIDRs is a list of network addresses that should be blocked. // +optional BlockCIDRs []string `json:"blockCIDRs,omitempty"` }
RuntimeNetworking defines the networking configuration of the runtime cluster.
func (*RuntimeNetworking) DeepCopy ¶ added in v1.71.0
func (in *RuntimeNetworking) DeepCopy() *RuntimeNetworking
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new RuntimeNetworking.
func (*RuntimeNetworking) DeepCopyInto ¶ added in v1.71.0
func (in *RuntimeNetworking) DeepCopyInto(out *RuntimeNetworking)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SNI ¶ added in v1.68.0
type SNI struct { // SecretName is the name of a secret containing the TLS certificate and private key. // +kubebuilder:validation:MinLength=1 SecretName string `json:"secretName"` // DomainPatterns is a list of fully qualified domain names, possibly with prefixed wildcard segments. The domain // patterns also allow IP addresses, but IPs should only be used if the apiserver has visibility to the IP address // requested by a client. If no domain patterns are provided, the names of the certificate are extracted. // Non-wildcard matches trump over wildcard matches, explicit domain patterns trump over extracted names. // +optional DomainPatterns []string `json:"domainPatterns,omitempty"` }
SNI contains configuration options for the TLS SNI settings.
func (*SNI) DeepCopy ¶ added in v1.68.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SNI.
func (*SNI) DeepCopyInto ¶ added in v1.68.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingLoadBalancerServices ¶ added in v1.63.0
type SettingLoadBalancerServices struct { // Annotations is a map of annotations that will be injected/merged into every load balancer service object. // +optional Annotations map[string]string `json:"annotations,omitempty"` }
SettingLoadBalancerServices controls certain settings for services of type load balancer that are created in the runtime cluster.
func (*SettingLoadBalancerServices) DeepCopy ¶ added in v1.63.0
func (in *SettingLoadBalancerServices) DeepCopy() *SettingLoadBalancerServices
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingLoadBalancerServices.
func (*SettingLoadBalancerServices) DeepCopyInto ¶ added in v1.63.0
func (in *SettingLoadBalancerServices) DeepCopyInto(out *SettingLoadBalancerServices)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingTopologyAwareRouting ¶ added in v1.68.0
type SettingTopologyAwareRouting struct { // Enabled controls whether certain Services deployed in the cluster should be topology-aware. // These Services are virtual-garden-etcd-main-client, virtual-garden-etcd-events-client and virtual-garden-kube-apiserver. // Additionally, other components that are deployed to the runtime cluster via other means can read this field and // according to its value enable/disable topology-aware routing for their Services. Enabled bool `json:"enabled"` }
SettingTopologyAwareRouting controls certain settings for topology-aware traffic routing in the cluster. See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md.
func (*SettingTopologyAwareRouting) DeepCopy ¶ added in v1.68.0
func (in *SettingTopologyAwareRouting) DeepCopy() *SettingTopologyAwareRouting
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingTopologyAwareRouting.
func (*SettingTopologyAwareRouting) DeepCopyInto ¶ added in v1.68.0
func (in *SettingTopologyAwareRouting) DeepCopyInto(out *SettingTopologyAwareRouting)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SettingVerticalPodAutoscaler ¶
type SettingVerticalPodAutoscaler struct { // Enabled controls whether the VPA components shall be deployed into this cluster. It is true by default because // the operator (and Gardener) heavily rely on a VPA being deployed. You should only disable this if your runtime // cluster already has another, manually/custom managed VPA deployment. If this is not the case, but you still // disable it, then reconciliation will fail. // +kubebuilder:default=true // +optional Enabled *bool `json:"enabled,omitempty"` }
SettingVerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the seed.
func (*SettingVerticalPodAutoscaler) DeepCopy ¶
func (in *SettingVerticalPodAutoscaler) DeepCopy() *SettingVerticalPodAutoscaler
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SettingVerticalPodAutoscaler.
func (*SettingVerticalPodAutoscaler) DeepCopyInto ¶
func (in *SettingVerticalPodAutoscaler) DeepCopyInto(out *SettingVerticalPodAutoscaler)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Settings ¶
type Settings struct { // LoadBalancerServices controls certain settings for services of type load balancer that are created in the runtime // cluster. // +optional LoadBalancerServices *SettingLoadBalancerServices `json:"loadBalancerServices,omitempty"` // VerticalPodAutoscaler controls certain settings for the vertical pod autoscaler components deployed in the // cluster. // +optional VerticalPodAutoscaler *SettingVerticalPodAutoscaler `json:"verticalPodAutoscaler,omitempty"` // TopologyAwareRouting controls certain settings for topology-aware traffic routing in the cluster. // See https://github.com/gardener/gardener/blob/master/docs/operations/topology_aware_routing.md. // +optional TopologyAwareRouting *SettingTopologyAwareRouting `json:"topologyAwareRouting,omitempty"` }
Settings contains certain settings for this cluster.
func (*Settings) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Settings.
func (*Settings) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Storage ¶ added in v1.62.0
type Storage struct { // Capacity is the storage capacity for the volumes. // +kubebuilder:default=`10Gi` // +optional Capacity *resource.Quantity `json:"capacity,omitempty"` // ClassName is the name of a storage class. // +optional ClassName *string `json:"className,omitempty"` }
Storage contains storage configuration.
func (*Storage) DeepCopy ¶ added in v1.62.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Storage.
func (*Storage) DeepCopyInto ¶ added in v1.62.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VirtualCluster ¶ added in v1.62.0
type VirtualCluster struct { // ControlPlane holds information about the general settings for the control plane of the virtual cluster. // +optional ControlPlane *ControlPlane `json:"controlPlane,omitempty"` // DNS holds information about DNS settings. DNS DNS `json:"dns"` // ETCD contains configuration for the etcds of the virtual garden cluster. // +optional ETCD *ETCD `json:"etcd,omitempty"` // Gardener contains the configuration options for the Gardener control plane components. Gardener Gardener `json:"gardener"` // Kubernetes contains the version and configuration options for the Kubernetes components of the virtual garden // cluster. Kubernetes Kubernetes `json:"kubernetes"` // Maintenance contains information about the time window for maintenance operations. Maintenance Maintenance `json:"maintenance"` // Networking contains information about cluster networking such as CIDRs, etc. Networking Networking `json:"networking"` }
VirtualCluster contains configuration for the virtual cluster.
func (*VirtualCluster) DeepCopy ¶ added in v1.62.0
func (in *VirtualCluster) DeepCopy() *VirtualCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VirtualCluster.
func (*VirtualCluster) DeepCopyInto ¶ added in v1.62.0
func (in *VirtualCluster) DeepCopyInto(out *VirtualCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Volume ¶ added in v1.91.0
type Volume struct { // MinimumSize defines the minimum size that should be used for PVCs in the runtime cluster. // +optional MinimumSize *resource.Quantity `json:"minimumSize,omitempty"` }
Volume contains settings for persistent volumes created in the runtime cluster.
func (*Volume) DeepCopy ¶ added in v1.91.0
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Volume.
func (*Volume) DeepCopyInto ¶ added in v1.91.0
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadIdentityKeyRotation ¶ added in v1.103.0
type WorkloadIdentityKeyRotation struct { // Phase describes the phase of the workload identity key credential rotation. Phase gardencorev1beta1.CredentialsRotationPhase `json:"phase"` // LastCompletionTime is the most recent time when the workload identity key credential rotation was successfully // completed. // +optional LastCompletionTime *metav1.Time `json:"lastCompletionTime,omitempty"` // LastInitiationTime is the most recent time when the workload identity key credential rotation was initiated. // +optional LastInitiationTime *metav1.Time `json:"lastInitiationTime,omitempty"` // LastInitiationFinishedTime is the recent time when the workload identity key credential rotation initiation was // completed. // +optional LastInitiationFinishedTime *metav1.Time `json:"lastInitiationFinishedTime,omitempty"` // LastCompletionTriggeredTime is the recent time when the workload identity key credential rotation completion was // triggered. // +optional LastCompletionTriggeredTime *metav1.Time `json:"lastCompletionTriggeredTime,omitempty"` }
WorkloadIdentityKeyRotation contains information about the workload identity key credential rotation.
func (*WorkloadIdentityKeyRotation) DeepCopy ¶ added in v1.103.0
func (in *WorkloadIdentityKeyRotation) DeepCopy() *WorkloadIdentityKeyRotation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadIdentityKeyRotation.
func (*WorkloadIdentityKeyRotation) DeepCopyInto ¶ added in v1.103.0
func (in *WorkloadIdentityKeyRotation) DeepCopyInto(out *WorkloadIdentityKeyRotation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.