Documentation ¶
Index ¶
- Constants
- func CanEnableExtension(runtime imv1.Runtime) bool
- func ExtendWithAnnotations(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithCertConfig(_ imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithCloudProfile(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithExposureClassName(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithLabels(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithNetworkFilter(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithSeedSelector(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func ExtendWithTolerations(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func NewDNSExtender(secretName, domainPrefix, dnsProviderType string) func(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func NewKubernetesExtender(defaultKubernetesVersion, currentKubernetesVersion string) func(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func NewMaintenanceExtender(enableKubernetesVersionAutoUpdate, enableMachineImageVersionAutoUpdate bool) func(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func NewOidcExtender(oidcProvider config.OidcProvider) func(runtime imv1.Runtime, shoot *gardener.Shoot) error
- func NewProviderExtenderForCreateOperation(enableIMDSv2 bool, defMachineImgName, defMachineImgVer string) func(rt imv1.Runtime, shoot *gardener.Shoot) error
- func NewProviderExtenderPatchOperation(enableIMDSv2 bool, ...) func(rt imv1.Runtime, shoot *gardener.Shoot) error
- type ControlPlaneProviderFunc
- type DNSExtensionProviderConfig
- type DNSIncludeExclude
- type DNSProvider
- type DNSProviderReplication
- type ExtensionProviderConfig
- type InfrastructureProviderFunc
- type ShootIssuers
Constants ¶
const ( ShootRuntimeGenerationAnnotation = "infrastructuremanager.kyma-project.io/runtime-generation" ShootRuntimeIDAnnotation = "infrastructuremanager.kyma-project.io/runtime-id" ShootLicenceTypeAnnotation = "infrastructuremanager.kyma-project.io/licence-type" RuntimeIDLabel = "kyma-project.io/runtime-id" ShootRestrictedEUAccessAnnotation = "support.gardener.cloud/eu-access-for-cluster-nodes" )
const ( DefaultAWSCloudProfileName = "aws" DefaultAzureCloudProfileName = "az" DefaultGCPCloudProfileName = "gcp" DefaultOpenStackCloudProfileName = "converged-cloud-kyma" )
const ( RuntimeGlobalAccountLabel = "kyma-project.io/global-account-id" RuntimeSubaccountLabel = "kyma-project.io/subaccount-id" ShootGlobalAccountLabel = "account" ShootSubAccountLabel = "subaccount" )
const NetworkFilterType = "shoot-networking-filter"
const (
OidcExtensionType = "shoot-oidc-service"
)
Variables ¶
This section is empty.
Functions ¶
func CanEnableExtension ¶
func ExtendWithAnnotations ¶
func ExtendWithCloudProfile ¶
func ExtendWithExposureClassName ¶
ExposureClassName is required only for OpenStack
func ExtendWithNetworkFilter ¶
func ExtendWithSeedSelector ¶
ExtendWithSeedSelector creates a new extender function that can enforce shoot seed location to be the same region as shoot When EnforceSeedLocation flag in set on RuntimeCR to true it adds a special seedSelector field with labelSelector set to match seed region with shoot region
func ExtendWithTolerations ¶
func NewDNSExtender ¶
func NewKubernetesExtender ¶
func NewKubernetesExtender(defaultKubernetesVersion, currentKubernetesVersion string) func(runtime imv1.Runtime, shoot *gardener.Shoot) error
NewKubernetesExtender creates a new Kubernetes extender function. It sets the Kubernetes version of the Shoot to the version specified in the Runtime. If the version is not specified in the Runtime, it sets the version to the `defaultKubernetesVersion`, set in `converter_config.json`. If the current Kubernetes version on Shoot is greater than the version determined above, it sets the version to the current Kubernetes version. It sets the EnableStaticTokenKubeconfig field of the Shoot to false.
func NewMaintenanceExtender ¶
func NewOidcExtender ¶
Types ¶
type DNSExtensionProviderConfig ¶
type DNSExtensionProviderConfig struct { // APIVersion is gardener extension api version APIVersion string `json:"apiVersion"` // Kind is extension type Kind string `json:"kind"` // DnsProviderReplication indicates whether dnsProvider replication is on DNSProviderReplication *DNSProviderReplication `json:"dnsProviderReplication,omitempty"` // Providers is a list of additional DNS providers that shall be enabled for this shoot cluster. // The primary ("external") provider at `spec.dns.provider` is added automatically Providers []DNSProvider `json:"providers"` // SyncProvidersFromShootSpecDNS is an optional flag for migrating and synchronising the providers given in the // shoot manifest at section `spec.dns.providers`. If true, any direct changes on the `providers` section // are overwritten with the content of section `spec.dns.providers`. SyncProvidersFromShootSpecDNS *bool `json:"syncProvidersFromShootSpecDNS,omitempty"` }
The types were copied from the following file: https://github.com/gardener/gardener-extension-shoot-dns-service/blob/master/pkg/apis/service/types.go
type DNSIncludeExclude ¶
type DNSIncludeExclude struct { // Include is a list of domains that shall be included. Include []string `json:"include,omitempty"` // Exclude is a list of domains that shall be excluded. Exclude []string `json:"exclude,omitempty"` }
DNSIncludeExclude contains information about which domains shall be included/excluded.
type DNSProvider ¶
type DNSProvider struct { // Domains contains information about which domains shall be included/excluded for this provider. Domains *DNSIncludeExclude `json:"domains,omitempty"` // SecretName is a name of a secret containing credentials for the stated domain and the // provider. SecretName *string `json:"secretName,omitempty"` // Type is the DNS provider type. Type *string `json:"type,omitempty"` // Zones contains information about which hosted zones shall be included/excluded for this provider. Zones *DNSIncludeExclude `json:"zones,omitempty"` }
DNSProvider contains information about a DNS provider.
type DNSProviderReplication ¶
type DNSProviderReplication struct { // Enabled indicates whether replication is on Enabled bool `json:"enabled"` }
type ExtensionProviderConfig ¶
type ExtensionProviderConfig struct { // APIVersion is gardener extension api version APIVersion string `json:"apiVersion"` // DnsProviderReplication indicates whether dnsProvider replication is on DNSProviderReplication *DNSProviderReplication `json:"dnsProviderReplication,omitempty"` // ShootIssuers indicates whether shoot Issuers are on ShootIssuers *ShootIssuers `json:"shootIssuers,omitempty"` // Kind is extension type Kind string `json:"kind"` }
func NewCertConfig ¶
func NewCertConfig() *ExtensionProviderConfig
type ShootIssuers ¶
type ShootIssuers struct { // Enabled indicates whether shoot Issuers are on Enabled bool `json:"enabled"` }