Documentation ¶
Index ¶
- type Builder
- func (b *Builder) Build(ctx context.Context, gardenClient client.Client, ...) (*Operation, error)
- func (b *Builder) WithConfig(cfg *config.GardenletConfiguration) *Builder
- func (b *Builder) WithGarden(g *garden.Garden) *Builder
- func (b *Builder) WithGardenClusterIdentity(gardenClusterIdentity string) *Builder
- func (b *Builder) WithGardenFrom(reader client.Reader, namespace string) *Builder
- func (b *Builder) WithGardenerInfo(gardenerInfo *gardencorev1beta1.Gardener) *Builder
- func (b *Builder) WithImageVector(imageVector imagevector.ImageVector) *Builder
- func (b *Builder) WithLogger(log logr.Logger) *Builder
- func (b *Builder) WithSecrets(secrets map[string]*corev1.Secret) *Builder
- func (b *Builder) WithSeed(s *seed.Seed) *Builder
- func (b *Builder) WithSeedFrom(gardenClient client.Reader, seedName string) *Builder
- func (b *Builder) WithShoot(s *shootpkg.Shoot) *Builder
- func (b *Builder) WithShootFromCluster(gardenClient client.Client, seedClientSet kubernetes.Interface, ...) *Builder
- type Operation
- func (o *Operation) AllSecretKeys() []string
- func (o *Operation) CleanShootTaskError(ctx context.Context, taskID string)
- func (o *Operation) ComputeAlertManagerHost() string
- func (o *Operation) ComputeAlertManagerHosts() []string
- func (o *Operation) ComputeIngressHost(prefix string) string
- func (o *Operation) ComputeKubeAPIServerHost() string
- func (o *Operation) ComputePlutonoHost() string
- func (o *Operation) ComputePlutonoHosts() []string
- func (o *Operation) ComputePrometheusHost() string
- func (o *Operation) ComputePrometheusHosts() []string
- func (o *Operation) ComputeValiHost() string
- func (o *Operation) ComputeValiHosts() []string
- func (o *Operation) DeleteClusterResourceFromSeed(ctx context.Context) error
- func (o *Operation) DeleteSecret(key string)
- func (o *Operation) DeleteShootState(ctx context.Context) error
- func (o *Operation) EnsureShootStateExists(ctx context.Context) error
- func (o *Operation) GetSecretKeysOfRole(kind string) []string
- func (o *Operation) GetShootState() *gardencorev1beta1.ShootState
- func (o *Operation) InitializeDesiredShootClients(ctx context.Context) error
- func (o *Operation) InitializeShootClients(ctx context.Context) error
- func (o *Operation) InjectSeedSeedImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
- func (o *Operation) InjectSeedShootImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
- func (o *Operation) InjectShootShootImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
- func (o *Operation) IsAPIServerRunning(ctx context.Context) (bool, error)
- func (o *Operation) IsShootMonitoringEnabled() bool
- func (o *Operation) IstioLabels() map[string]string
- func (o *Operation) IstioLoadBalancerAnnotations() map[string]string
- func (o *Operation) IstioNamespace() string
- func (o *Operation) IstioServiceName() string
- func (o *Operation) LoadSecret(key string) *corev1.Secret
- func (o *Operation) ReportShootProgress(ctx context.Context, stats *flow.Stats)
- func (o *Operation) SaveGardenerResourceDataInShootState(ctx context.Context, f func(*[]gardencorev1beta1.GardenerResourceData) error) error
- func (o *Operation) SeedVersion() string
- func (o *Operation) SetShootState(shootState *gardencorev1beta1.ShootState)
- func (o *Operation) ShootVersion() string
- func (o *Operation) StoreSecret(key string, secret *corev1.Secret)
- func (o *Operation) ToAdvertisedAddresses() []gardencorev1beta1.ShootAdvertisedAddress
- func (o *Operation) UpdateAdvertisedAddresses(ctx context.Context) error
- func (o *Operation) WantsPlutono() bool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Builder ¶ added in v1.4.0
type Builder struct {
// contains filtered or unexported fields
}
Builder is an object that builds Operation objects.
func (*Builder) Build ¶ added in v1.4.0
func (b *Builder) Build( ctx context.Context, gardenClient client.Client, seedClientSet kubernetes.Interface, shootClientMap clientmap.ClientMap, ) ( *Operation, error, )
Build initializes a new Operation object.
func (*Builder) WithConfig ¶ added in v1.4.0
func (b *Builder) WithConfig(cfg *config.GardenletConfiguration) *Builder
WithConfig sets the configFunc attribute at the Builder.
func (*Builder) WithGarden ¶ added in v1.4.0
WithGarden sets the gardenFunc attribute at the Builder.
func (*Builder) WithGardenClusterIdentity ¶ added in v1.8.0
WithGardenClusterIdentity sets the identity of the Garden cluster as attribute at the Builder.
func (*Builder) WithGardenFrom ¶ added in v1.4.0
WithGardenFrom sets the gardenFunc attribute at the Builder which will build a new Garden object.
func (*Builder) WithGardenerInfo ¶ added in v1.4.0
func (b *Builder) WithGardenerInfo(gardenerInfo *gardencorev1beta1.Gardener) *Builder
WithGardenerInfo sets the gardenerInfoFunc attribute at the Builder.
func (*Builder) WithImageVector ¶ added in v1.4.0
func (b *Builder) WithImageVector(imageVector imagevector.ImageVector) *Builder
WithImageVector sets the imageVectorFunc attribute at the Builder.
func (*Builder) WithLogger ¶ added in v1.4.0
WithLogger sets the loggerFunc attribute at the Builder.
func (*Builder) WithSecrets ¶ added in v1.4.0
WithSecrets sets the secretsFunc attribute at the Builder.
func (*Builder) WithSeedFrom ¶ added in v1.4.0
WithSeedFrom sets the seedFunc attribute at the Builder which will build a new Seed object.
func (*Builder) WithShootFromCluster ¶ added in v1.16.0
func (b *Builder) WithShootFromCluster(gardenClient client.Client, seedClientSet kubernetes.Interface, s *gardencorev1beta1.Shoot) *Builder
WithShootFromCluster sets the shootFunc attribute at the Builder which will build a new Shoot object constructed from the cluster resource. The shoot status is still taken from the passed `shoot`, though.
type Operation ¶
type Operation struct { SecretsManager secretsmanager.Interface Config *config.GardenletConfiguration Logger logr.Logger GardenerInfo *gardencorev1beta1.Gardener GardenClusterIdentity string ImageVector imagevector.ImageVector Garden *garden.Garden Seed *seed.Seed Shoot *shoot.Shoot ManagedSeed *seedmanagementv1alpha1.ManagedSeed ManagedSeedAPIServer *v1beta1helper.ManagedSeedAPIServer GardenClient client.Client SeedClientSet kubernetes.Interface ShootClientMap clientmap.ClientMap ShootClientSet kubernetes.Interface APIServerAddress string APIServerClusterIP string SeedNamespaceObject *corev1.Namespace // ControlPlaneWildcardCert is a wildcard tls certificate which is issued for the seed's ingress domain. ControlPlaneWildcardCert *corev1.Secret // contains filtered or unexported fields }
Operation contains all data required to perform an operation on a Shoot cluster.
func (*Operation) AllSecretKeys ¶ added in v1.28.3
AllSecretKeys returns all stored secret keys from the operation. Calling this function is thread-safe.
func (*Operation) CleanShootTaskError ¶
CleanShootTaskError removes the error with taskID from the Shoot's status.LastErrors array. If the status.LastErrors array is empty then status.LastErrors is also removed.
func (*Operation) ComputeAlertManagerHost ¶
ComputeAlertManagerHost computes the host for alert manager.
func (*Operation) ComputeAlertManagerHosts ¶ added in v0.34.0
ComputeAlertManagerHosts computes the host for alert manager.
func (*Operation) ComputeIngressHost ¶
ComputeIngressHost computes the host for a given prefix.
func (*Operation) ComputeKubeAPIServerHost ¶ added in v1.68.0
ComputeKubeAPIServerHost computes the host with a TLS certificate from a trusted origin for KubeAPIServer.
func (*Operation) ComputePlutonoHost ¶ added in v1.71.0
ComputePlutonoHost computes the host for Plutono.
func (*Operation) ComputePlutonoHosts ¶ added in v1.71.0
ComputePlutonoHosts computes the host for plutono.
func (*Operation) ComputePrometheusHost ¶
ComputePrometheusHost computes the host for prometheus.
func (*Operation) ComputePrometheusHosts ¶ added in v0.34.0
ComputePrometheusHosts computes the hosts for prometheus.
func (*Operation) ComputeValiHost ¶ added in v1.71.0
ComputeValiHost computes the host for vali.
func (*Operation) ComputeValiHosts ¶ added in v1.71.0
ComputeValiHosts computes the host for vali.
func (*Operation) DeleteClusterResourceFromSeed ¶
DeleteClusterResourceFromSeed deletes the `Cluster` extension resource for the shoot in the seed cluster.
func (*Operation) DeleteSecret ¶ added in v1.28.3
DeleteSecret deleted the secret under the given key from the operation. Calling this function is thread-safe.
func (*Operation) DeleteShootState ¶ added in v1.24.0
DeleteShootState deletes the ShootState resource for the corresponding shoot.
func (*Operation) EnsureShootStateExists ¶ added in v1.2.0
EnsureShootStateExists creates the ShootState resource for the corresponding shoot and updates the operations object
func (*Operation) GetSecretKeysOfRole ¶
GetSecretKeysOfRole returns a list of keys which are present in the Garden Secrets map and which are prefixed with <kind>.
func (*Operation) GetShootState ¶ added in v1.32.0
func (o *Operation) GetShootState() *gardencorev1beta1.ShootState
GetShootState returns the shootstate resource of this Shoot in a concurrency safe way. This method should be used only for reading the data of the returned shootstate resource. The returned shootstate resource MUST NOT BE MODIFIED (except in test code) since this might interfere with other concurrent reads and writes. To properly update the shootstate resource of this Shoot use SaveGardenerResourceDataInShootState.
func (*Operation) InitializeDesiredShootClients ¶ added in v1.31.0
InitializeDesiredShootClients will use the Seed Kubernetes client to read the gardener Secret in the Seed cluster which contains a Kubeconfig that can be used to authenticate against the Shoot cluster. With it, a Kubernetes client as well as a Chart renderer for the Shoot cluster will be initialized and attached to the already existing Operation object. In contrast to InitializeShootClients, InitializeDesiredShootClients returns an error if the discovered version via the client does not match the desired Kubernetes version from the shoot spec. This is especially useful, if the client is initialized after a rolling update of the Kube-Apiserver and you want to ensure that the discovered version matches the expected version.
func (*Operation) InitializeShootClients ¶
InitializeShootClients will use the Seed Kubernetes client to read the gardener Secret in the Seed cluster which contains a Kubeconfig that can be used to authenticate against the Shoot cluster. With it, a Kubernetes client as well as a Chart renderer for the Shoot cluster will be initialized and attached to the already existing Operation object.
func (*Operation) InjectSeedSeedImages ¶
func (o *Operation) InjectSeedSeedImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
InjectSeedSeedImages injects images that shall run on the Seed and target the Seed's Kubernetes version.
func (*Operation) InjectSeedShootImages ¶
func (o *Operation) InjectSeedShootImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
InjectSeedShootImages injects images that shall run on the Seed but target the Shoot's Kubernetes version.
func (*Operation) InjectShootShootImages ¶
func (o *Operation) InjectShootShootImages(values map[string]interface{}, names ...string) (map[string]interface{}, error)
InjectShootShootImages injects images that shall run on the Shoot and target the Shoot's Kubernetes version.
func (*Operation) IsAPIServerRunning ¶ added in v1.7.0
IsAPIServerRunning checks if the API server of the Shoot currently running (not scaled-down/deleted).
func (*Operation) IsShootMonitoringEnabled ¶ added in v1.53.0
IsShootMonitoringEnabled returns true if shoot monitoring is enabled and shoot is not of purpose testing.
func (*Operation) IstioLabels ¶ added in v1.63.0
IstioLabels contain the labels to be used for the istio ingress gateway entities.
func (*Operation) IstioLoadBalancerAnnotations ¶ added in v1.63.0
IstioLoadBalancerAnnotations contain the annotation to be used for the istio ingress service load balancer.
func (*Operation) IstioNamespace ¶ added in v1.63.0
IstioNamespace is the currently used namespace of the istio ingress gateway, which is responsible for the shoot cluster.
func (*Operation) IstioServiceName ¶ added in v1.63.0
IstioServiceName is the currently used name of the istio ingress service, which is responsible for the shoot cluster.
func (*Operation) LoadSecret ¶ added in v1.28.3
LoadSecret loads the secret under the given key from the operation. Calling this function is thread-safe. Be aware that the returned pointer and the underlying secret map refer to the same secret object. If you need to modify the returned secret, copy it first and store the changes via `StoreSecret`.
func (*Operation) ReportShootProgress ¶
ReportShootProgress will update the last operation object in the Shoot manifest `status` section by the current progress of the Flow execution.
func (*Operation) SaveGardenerResourceDataInShootState ¶ added in v1.32.0
func (o *Operation) SaveGardenerResourceDataInShootState(ctx context.Context, f func(*[]gardencorev1beta1.GardenerResourceData) error) error
SaveGardenerResourceDataInShootState updates the shootstate resource of this Shoot in a concurrency safe way, using the given context and mutate function. The mutate function should modify the passed GardenerResourceData so that changes are persisted. This method is protected by a mutex, so only a single SaveGardenerResourceDataInShootState operation can be executed at any point in time.
func (*Operation) SeedVersion ¶
SeedVersion is a shorthand for the kubernetes version of the SeedClientSet.
func (*Operation) SetShootState ¶ added in v1.32.0
func (o *Operation) SetShootState(shootState *gardencorev1beta1.ShootState)
SetShootState sets the shootstate resource of this Shoot in a concurrency safe way. This method is not protected by a mutex and does not update the shootstate resource in the cluster and so should be used only in exceptional situations, or as a convenience in test code. The shootstate passed as a parameter MUST NOT BE MODIFIED after the call to SetShootState (except in test code) since this might interfere with other concurrent reads and writes. To properly update the shootstate resource of this Shoot use SaveGardenerResourceDataInShootState.
func (*Operation) ShootVersion ¶
ShootVersion is a shorthand for the desired kubernetes version of the operation's shoot.
func (*Operation) StoreSecret ¶ added in v1.28.3
StoreSecret stores the passed secret under the given key from the operation. Calling this function is thread-safe.
func (*Operation) ToAdvertisedAddresses ¶ added in v1.21.0
func (o *Operation) ToAdvertisedAddresses() []gardencorev1beta1.ShootAdvertisedAddress
ToAdvertisedAddresses returns list of advertised addresses on a Shoot cluster.
func (*Operation) UpdateAdvertisedAddresses ¶ added in v1.36.0
UpdateAdvertisedAddresses updates the shoot.status.advertisedAddresses with the list of addresses on which the API server of the shoot is accessible.
func (*Operation) WantsPlutono ¶ added in v1.71.0
WantsPlutono returns true if shoot is not of purpose testing and either shoot monitoring or vali is enabled.
Directories ¶
Path | Synopsis |
---|---|
matchers
this file is copy of https://github.com/kubernetes/kubernetes/blob/f247e75980061d7cf83c63c0fb1f12c7060c599f/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/rules/rules.go with some modifications for the webhook matching use-case.
|
this file is copy of https://github.com/kubernetes/kubernetes/blob/f247e75980061d7cf83c63c0fb1f12c7060c599f/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/rules/rules.go with some modifications for the webhook matching use-case. |