Documentation ¶
Index ¶
- type Builder
- func (b *Builder) Build(ctx context.Context, clientMap clientmap.ClientMap) (*Operation, error)
- func (b *Builder) WithChartsRootPath(chartsRootPath string) *Builder
- 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(logger *logrus.Entry) *Builder
- func (b *Builder) WithSecrets(secrets map[string]*corev1.Secret) *Builder
- func (b *Builder) WithSeed(s *seed.Seed) *Builder
- func (b *Builder) WithSeedFrom(k8sGardenCoreInformers gardencoreinformers.Interface, seedName string) *Builder
- func (b *Builder) WithShoot(s *shoot.Shoot) *Builder
- func (b *Builder) WithShootFrom(k8sGardenCoreInformers gardencoreinformers.Interface, ...) *Builder
- func (b *Builder) WithShootFromCluster(gardenClient, seedClient kubernetes.Interface, s *gardencorev1beta1.Shoot) *Builder
- type Operation
- func (o *Operation) CleanShootTaskErrorAndUpdateStatusLabel(ctx context.Context, taskID string)
- func (o *Operation) ComputeAlertManagerHost() string
- func (o *Operation) ComputeAlertManagerHosts() []string
- func (o *Operation) ComputeGrafanaHosts() []string
- func (o *Operation) ComputeGrafanaOperatorsHost() string
- func (o *Operation) ComputeGrafanaUsersHost() string
- func (o *Operation) ComputeIngressHost(prefix string) string
- func (o *Operation) ComputePrometheusHost() string
- func (o *Operation) ComputePrometheusHosts() []string
- func (o *Operation) DeleteClusterResourceFromSeed(ctx context.Context) error
- func (o *Operation) EnsureShootStateExists(ctx context.Context) error
- func (o *Operation) GetSecretKeysOfRole(kind string) []string
- func (o *Operation) InitializeSeedClients(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) ReportShootProgress(ctx context.Context, stats *flow.Stats)
- func (o *Operation) SaveGardenerResourcesInShootState(ctx context.Context, ...) error
- func (o *Operation) SeedVersion() string
- func (o *Operation) ShootVersion() string
- func (o *Operation) SwitchBackupEntryToTargetSeed(ctx context.Context) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder is an object that builds Operation objects.
func (*Builder) WithChartsRootPath ¶
WithChartsRootPath sets the ChartsRootPath attribute at the Builder. Mainly used for testing. Optional.
func (*Builder) WithConfig ¶
func (b *Builder) WithConfig(cfg *config.GardenletConfiguration) *Builder
WithConfig sets the configFunc attribute at the Builder.
func (*Builder) WithGarden ¶
WithGarden sets the gardenFunc attribute at the Builder.
func (*Builder) WithGardenClusterIdentity ¶
WithGardenClusterIdentity sets the identity of the Garden cluster as attribute at the Builder.
func (*Builder) WithGardenFrom ¶
WithGardenFrom sets the gardenFunc attribute at the Builder which will build a new Garden object.
func (*Builder) WithGardenerInfo ¶
func (b *Builder) WithGardenerInfo(gardenerInfo *gardencorev1beta1.Gardener) *Builder
WithGardenerInfo sets the gardenerInfoFunc attribute at the Builder.
func (*Builder) WithImageVector ¶
func (b *Builder) WithImageVector(imageVector imagevector.ImageVector) *Builder
WithImageVector sets the imageVectorFunc attribute at the Builder.
func (*Builder) WithLogger ¶
WithLogger sets the loggerFunc attribute at the Builder.
func (*Builder) WithSecrets ¶
WithSecrets sets the secretsFunc attribute at the Builder.
func (*Builder) WithSeedFrom ¶
func (b *Builder) WithSeedFrom(k8sGardenCoreInformers gardencoreinformers.Interface, seedName string) *Builder
WithSeedFrom sets the seedFunc attribute at the Builder which will build a new Seed object.
func (*Builder) WithShootFrom ¶
func (b *Builder) WithShootFrom(k8sGardenCoreInformers gardencoreinformers.Interface, gardenClient kubernetes.Interface, s *gardencorev1beta1.Shoot) *Builder
WithShootFrom sets the shootFunc attribute at the Builder which will build a new Shoot object.
func (*Builder) WithShootFromCluster ¶
func (b *Builder) WithShootFromCluster(gardenClient, seedClient 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 { Config *config.GardenletConfiguration Logger *logrus.Entry GardenerInfo *gardencorev1beta1.Gardener GardenClusterIdentity string Secrets map[string]*corev1.Secret CheckSums map[string]string ImageVector imagevector.ImageVector Garden *garden.Garden Seed *seed.Seed Shoot *shoot.Shoot ShootState *gardencorev1alpha1.ShootState ManagedSeed *seedmanagementv1alpha1.ManagedSeed ManagedSeedAPIServer *gardencorev1beta1helper.ShootedSeedAPIServer ClientMap clientmap.ClientMap K8sGardenClient kubernetes.Interface K8sSeedClient kubernetes.Interface K8sShootClient kubernetes.Interface ChartsRootPath string APIServerAddress string APIServerClusterIP string APIServerHealthCheckToken string SeedNamespaceObject *corev1.Namespace MonitoringClient prometheusclient.API // ControlPlaneWildcardCert is a wildcard tls certificate which is issued for the seed's ingress domain. ControlPlaneWildcardCert *corev1.Secret }
Operation contains all data required to perform an operation on a Shoot cluster.
func (*Operation) CleanShootTaskErrorAndUpdateStatusLabel ¶
CleanShootTaskErrorAndUpdateStatusLabel 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. It also re-evaluates the shoot status in case the last error list is empty now, and if necessary, updates the status label on the shoot.
func (*Operation) ComputeAlertManagerHost ¶
ComputeAlertManagerHost computes the host for alert manager.
func (*Operation) ComputeAlertManagerHosts ¶
ComputeAlertManagerHosts computes the host for alert manager.
func (*Operation) ComputeGrafanaHosts ¶
ComputeGrafanaHosts computes the host for both grafanas.
func (*Operation) ComputeGrafanaOperatorsHost ¶
ComputeGrafanaOperatorsHost computes the host for users Grafana.
func (*Operation) ComputeGrafanaUsersHost ¶
ComputeGrafanaUsersHost computes the host for operators Grafana.
func (*Operation) ComputeIngressHost ¶
ComputeIngressHost computes the host for a given prefix.
func (*Operation) ComputePrometheusHost ¶
ComputePrometheusHost computes the host for prometheus.
func (*Operation) ComputePrometheusHosts ¶
ComputePrometheusHosts computes the hosts for prometheus.
func (*Operation) DeleteClusterResourceFromSeed ¶
DeleteClusterResourceFromSeed deletes the `Cluster` extension resource for the shoot in the seed cluster.
func (*Operation) EnsureShootStateExists ¶
EnsureShootStateExists creates the ShootState resource for the corresponding shoot and sets its ownerReferences to the Shoot.
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) InitializeSeedClients ¶
InitializeSeedClients will use the Garden Kubernetes client to read the Seed Secret in the Garden cluster which contains a Kubeconfig that can be used to authenticate against the Seed cluster. With it, a Kubernetes client as well as a Chart renderer for the Seed cluster will be initialized and attached to the already existing Operation object.
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 ¶
IsAPIServerRunning checks if the API server of the Shoot currently running (not scaled-down/deleted).
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) SaveGardenerResourcesInShootState ¶
func (o *Operation) SaveGardenerResourcesInShootState(ctx context.Context, resourceList gardencorev1alpha1helper.GardenerResourceDataList) error
SaveGardenerResourcesInShootState saves the provided GardenerResourcesDataList in the ShootState's `gardener` field
func (*Operation) SeedVersion ¶
SeedVersion is a shorthand for the kubernetes version of the K8sSeedClient.
func (*Operation) ShootVersion ¶
ShootVersion is a shorthand for the desired kubernetes version of the operation's shoot.
Directories ¶
Path | Synopsis |
---|---|
component/clusterautoscaler/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/etcd/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/extensions/backupentry/mock
Package backupentry is a generated GoMock package.
|
Package backupentry is a generated GoMock package. |
component/extensions/containerruntime/mock
Package containerruntime is a generated GoMock package.
|
Package containerruntime is a generated GoMock package. |
component/extensions/controlplane/mock
Package controlplane is a generated GoMock package.
|
Package controlplane is a generated GoMock package. |
component/extensions/extension/mock
Package extension is a generated GoMock package.
|
Package extension is a generated GoMock package. |
component/extensions/infrastructure/mock
Package infrastructure is a generated GoMock package.
|
Package infrastructure is a generated GoMock package. |
component/extensions/operatingsystemconfig/mock
Package operatingsystemconfig is a generated GoMock package.
|
Package operatingsystemconfig is a generated GoMock package. |
component/extensions/operatingsystemconfig/original/components/kubelet/mock
Package kubelet is a generated GoMock package.
|
Package kubelet is a generated GoMock package. |
component/extensions/operatingsystemconfig/original/components/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/extensions/operatingsystemconfig/utils/mock
Package utils is a generated GoMock package.
|
Package utils is a generated GoMock package. |
component/extensions/worker/mock
Package worker is a generated GoMock package.
|
Package worker is a generated GoMock package. |
component/gardenerkubescheduler/configurator
Package configurator contains the Configurator interface It is a separate package to avoid dependency cycle.
|
Package configurator contains the Configurator interface It is a separate package to avoid dependency cycle. |
component/gardenerkubescheduler/v18
Package v18 a kube-scheduler specific configuration for 1.18 Kubernetes version.
|
Package v18 a kube-scheduler specific configuration for 1.18 Kubernetes version. |
component/gardenerkubescheduler/v19
Package v19 a kube-scheduler specific configuration for 1.19 Kubernetes version.
|
Package v19 a kube-scheduler specific configuration for 1.19 Kubernetes version. |
component/gardenerkubescheduler/v20
Package v20 a kube-scheduler specific configuration for 1.20 Kubernetes version.
|
Package v20 a kube-scheduler specific configuration for 1.20 Kubernetes version. |
component/konnectivity/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/kubecontrollermanager/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/kubescheduler/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/metricsserver/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
component/resourcemanager/mock
Package mock is a generated GoMock package.
|
Package mock is a generated GoMock package. |
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. |