shoot

package
v1.41.5 Latest Latest
Warning

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

Go to latest
Published: Mar 15, 2022 License: Apache-2.0, BSD-2-Clause, MIT, + 1 more Imports: 59 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// NewOperation is used to create a new `operation.Operation` instance.
	NewOperation = defaultNewOperationFunc
	// NewHealthCheck is used to create a new Health check instance.
	NewHealthCheck = defaultNewHealthCheck
	// NewConstraintCheck is used to create a new Constraint check instance.
	NewConstraintCheck = defaultNewConstraintCheck
	// NewGarbageCollector is used to create a new Constraint check instance.
	NewGarbageCollector = defaultNewGarbageCollector
)

Functions

func IsShootManagedByThisGardenlet added in v1.40.0

func IsShootManagedByThisGardenlet(shoot *gardencorev1beta1.Shoot, gc *config.GardenletConfiguration) bool

IsShootManagedByThisGardenlet checks if the given shoot is managed by this gardenlet by comparing it with the seed name from the GardenletConfiguration.

func NewCareReconciler added in v1.20.4

func NewCareReconciler(
	clientMap clientmap.ClientMap,
	l logrus.FieldLogger,
	imageVector imagevector.ImageVector,
	identity *gardencorev1beta1.Gardener,
	gardenClusterIdentity string,
	config *config.GardenletConfiguration,
) reconcile.Reconciler

NewCareReconciler returns an implementation of reconcile.Reconciler which is dedicated to execute care operations on shoots, e.g., health checks or garbage collection.

func NewMigrationReconciler added in v1.39.0

func NewMigrationReconciler(
	clientMap clientmap.ClientMap,
	logger logrus.FieldLogger,
	config *config.GardenletConfiguration,
) reconcile.Reconciler

NewMigrationReconciler returns an implementation of reconcile.Reconciler that forces the shoot's restoration to this seed during control plane migration if the preparation for migration in the source seed is not finished after a certain grace period and is considered unlikely to succeed ("bad case" scenario).

func NewSeedRegistrationReconciler added in v1.30.0

func NewSeedRegistrationReconciler(clientMap clientmap.ClientMap, recorder record.EventRecorder, logger logrus.FieldLogger) reconcile.Reconciler

NewSeedRegistrationReconciler creates a new reconciler that registers ManagedSeeds for Shoots with the use-as-seed annotation. It should be considered deprecated and will be removed in a future version.

func NewShootReconciler added in v1.35.0

func NewShootReconciler(
	clientMap clientmap.ClientMap,
	recorder record.EventRecorder,
	l logrus.FieldLogger,
	imageVector imagevector.ImageVector,
	identity *gardencorev1beta1.Gardener,
	gardenClusterIdentity string,
	config *config.GardenletConfiguration,
) reconcile.Reconciler

NewShootReconciler returns a reconciler that implements the main shoot reconciliation logic, i.e creation, hibernation, migration and deletion.

Types

type ConstraintCheck added in v1.16.0

type ConstraintCheck interface {
	Check(ctx context.Context, constraints []gardencorev1beta1.Condition) []gardencorev1beta1.Condition
}

ConstraintCheck is an interface used to perform constraint checks.

type Controller

type Controller struct {
	// contains filtered or unexported fields
}

Controller controls Shoots.

func NewShootController

func NewShootController(
	ctx context.Context,
	clientMap clientmap.ClientMap,
	logger logrus.FieldLogger,
	config *config.GardenletConfiguration,
	identity *gardencorev1beta1.Gardener,
	gardenClusterIdentity string,
	imageVector imagevector.ImageVector,
	recorder record.EventRecorder,
) (*Controller, error)

NewShootController takes a Kubernetes client for the Garden clusters <k8sGardenClient>, a struct holding information about the acting Gardener, a <shootInformer>, and a <recorder> for event recording. It creates a new Gardener controller.

func (*Controller) Run

func (c *Controller) Run(ctx context.Context, shootWorkers, shootCareWorkers, shootMigrationWorkers int)

Run runs the Controller until the given stop channel can be read from.

type GarbageCollector added in v1.16.0

type GarbageCollector interface {
	Collect(ctx context.Context)
}

GarbageCollector is an interface used to perform garbage collection.

type HealthCheck added in v1.16.0

type HealthCheck interface {
	Check(ctx context.Context, thresholdMapping map[gardencorev1beta1.ConditionType]time.Duration, threshold *metav1.Duration, conditions []gardencorev1beta1.Condition) []gardencorev1beta1.Condition
}

HealthCheck is an interface used to perform health checks.

type NewConstraintCheckFunc added in v1.16.0

type NewConstraintCheckFunc func(op *operation.Operation, init care.ShootClientInit) ConstraintCheck

NewConstraintCheckFunc is a function used to create a new instance for performing constraint checks.

type NewGarbageCollectorFunc added in v1.16.0

type NewGarbageCollectorFunc func(op *operation.Operation, init care.ShootClientInit) GarbageCollector

NewGarbageCollectorFunc is a function used to create a new instance to perform garbage collection.

type NewHealthCheckFunc added in v1.16.0

type NewHealthCheckFunc func(op *operation.Operation, init care.ShootClientInit) HealthCheck

NewHealthCheckFunc is a function used to create a new instance for performing health checks.

type NewOperationFunc added in v1.16.0

type NewOperationFunc func(
	ctx context.Context,
	gardenClient kubernetes.Interface,
	seedClient kubernetes.Interface,
	config *config.GardenletConfiguration,
	gardenerInfo *gardencorev1beta1.Gardener,
	gardenClusterIdentity string,
	secrets map[string]*corev1.Secret,
	imageVector imagevector.ImageVector,
	clientMap clientmap.ClientMap,
	shoot *gardencorev1beta1.Shoot,
	logger logrus.FieldLogger,
) (
	*operation.Operation,
	error,
)

NewOperationFunc is a function used to create a new `operation.Operation` instance.

Jump to

Keyboard shortcuts

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