extender

package
v0.0.0-...-783dc2c Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2024 License: Apache-2.0 Imports: 17 Imported by: 0

Documentation

Index

Constants

View Source
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"
)
View Source
const (
	DefaultAWSCloudProfileName       = "aws"
	DefaultAzureCloudProfileName     = "az"
	DefaultGCPCloudProfileName       = "gcp"
	DefaultOpenStackCloudProfileName = "converged-cloud-kyma"
)
View Source
const (
	RuntimeGlobalAccountLabel = "kyma-project.io/global-account-id"
	RuntimeSubaccountLabel    = "kyma-project.io/subaccount-id"
	ShootGlobalAccountLabel   = "account"
	ShootSubAccountLabel      = "subaccount"
)
View Source
const NetworkFilterType = "shoot-networking-filter"
View Source
const (
	OidcExtensionType = "shoot-oidc-service"
)

Variables

This section is empty.

Functions

func CanEnableExtension

func CanEnableExtension(runtime imv1.Runtime) bool

func ExtendWithAnnotations

func ExtendWithAnnotations(runtime imv1.Runtime, shoot *gardener.Shoot) error

func ExtendWithCertConfig

func ExtendWithCertConfig(_ imv1.Runtime, shoot *gardener.Shoot) error

func ExtendWithCloudProfile

func ExtendWithCloudProfile(runtime imv1.Runtime, shoot *gardener.Shoot) error

func ExtendWithExposureClassName

func ExtendWithExposureClassName(runtime imv1.Runtime, shoot *gardener.Shoot) error

ExposureClassName is required only for OpenStack

func ExtendWithLabels

func ExtendWithLabels(runtime imv1.Runtime, shoot *gardener.Shoot) error

func ExtendWithNetworkFilter

func ExtendWithNetworkFilter(runtime imv1.Runtime, shoot *gardener.Shoot) error

func ExtendWithSeedSelector

func ExtendWithSeedSelector(runtime imv1.Runtime, shoot *gardener.Shoot) error

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 ExtendWithTolerations(runtime imv1.Runtime, shoot *gardener.Shoot) error

func NewDNSExtender

func NewDNSExtender(secretName, domainPrefix, dnsProviderType string) func(runtime imv1.Runtime, shoot *gardener.Shoot) error

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 NewMaintenanceExtender(enableKubernetesVersionAutoUpdate, enableMachineImageVersionAutoUpdate bool) func(runtime imv1.Runtime, shoot *gardener.Shoot) error

func NewOidcExtender

func NewOidcExtender(oidcProvider config.OidcProvider) func(runtime imv1.Runtime, shoot *gardener.Shoot) error

func NewProviderExtenderForCreateOperation

func NewProviderExtenderForCreateOperation(enableIMDSv2 bool, defMachineImgName, defMachineImgVer string) func(rt imv1.Runtime, shoot *gardener.Shoot) error

func NewProviderExtenderPatchOperation

func NewProviderExtenderPatchOperation(enableIMDSv2 bool, defMachineImgName, defMachineImgVer, currMachineImgName, currMachineImgVer string, zones []string) func(rt imv1.Runtime, shoot *gardener.Shoot) error

Types

type ControlPlaneProviderFunc

type ControlPlaneProviderFunc func(zones []string) ([]byte, error)

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 InfrastructureProviderFunc

type InfrastructureProviderFunc func(workersCidr string, zones []string) ([]byte, error)

type ShootIssuers

type ShootIssuers struct {
	// Enabled indicates whether shoot Issuers are on
	Enabled bool `json:"enabled"`
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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