Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
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 ¶
This section is empty.
Types ¶
type CareControlInterface ¶
type CareControlInterface interface {
Care(shoot *gardencorev1beta1.Shoot, key string) error
}
CareControlInterface implements the control logic for caring for Shoots. It is implemented as an interface to allow for extensions that provide different semantics. Currently, there is only one implementation.
func NewDefaultCareControl ¶
func NewDefaultCareControl(clientMap clientmap.ClientMap, k8sGardenCoreInformers gardencoreinformers.Interface, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, identity *gardencorev1beta1.Gardener, gardenClusterIdentity string, config *config.GardenletConfiguration) CareControlInterface
NewDefaultCareControl returns a new instance of the default implementation CareControlInterface that implements the documented semantics for caring for Shoots. You should use an instance returned from NewDefaultCareControl() for any scenario other than testing.
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(clientMap clientmap.ClientMap, k8sGardenCoreInformers gardencoreinformers.SharedInformerFactory, config *config.GardenletConfiguration, identity *gardencorev1beta1.Gardener, gardenClusterIdentity string, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, recorder record.EventRecorder) *Controller
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) CollectMetrics ¶
func (c *Controller) CollectMetrics(ch chan<- prometheus.Metric)
CollectMetrics implements gardenmetrics.ControllerMetricsCollector interface
func (*Controller) Run ¶
func (c *Controller) Run(ctx context.Context, shootWorkers, shootCareWorkers int)
Run runs the Controller until the given stop channel can be read from.
func (*Controller) RunningWorkers ¶
func (c *Controller) RunningWorkers() int
RunningWorkers returns the number of running workers.
type ControllerInstallationControlInterface ¶
type ControllerInstallationControlInterface interface {
Reconcile(controllerInstallationObj *gardencorev1beta1.ControllerInstallation) ([]*gardencorev1beta1.Shoot, error)
}
ControllerInstallationControlInterface implements the control logic for requeuing Shoots after extensions have been updated. It is implemented as an interface to allow for extensions that provide different semantics. Currently, there is only one implementation.
func NewDefaultControllerInstallationControl ¶
func NewDefaultControllerInstallationControl(clientMap clientmap.ClientMap, k8sGardenCoreInformers gardencoreinformers.Interface, recorder record.EventRecorder) ControllerInstallationControlInterface
NewDefaultControllerInstallationControl returns a new instance of the default implementation ControllerInstallationControlInterface that implements the documented semantics for maintaining Shoots. You should use an instance returned from NewDefaultControllerInstallationControl() for any scenario other than testing.
type GarbageCollector ¶ added in v1.16.0
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, seedClient kubernetes.Interface, config *config.GardenletConfiguration, gardenerInfo *gardencorev1beta1.Gardener, gardenClusterIdentity string, secrets map[string]*corev1.Secret, imageVector imagevector.ImageVector, k8sGardenCoreInformers v1beta1.Interface, clientMap clientmap.ClientMap, shoot *gardencorev1beta1.Shoot, logger *logrus.Entry, ) (*operation.Operation, error)
NewOperationFunc is a function used to create a new `operation.Operation` instance.
type SeedRegistrationControlInterface ¶
type SeedRegistrationControlInterface interface {
Reconcile(ctx context.Context, shoot *gardencorev1beta1.Shoot, shootedSeed *gardencorev1beta1helper.ShootedSeed) (reconcile.Result, error)
}
SeedRegistrationControlInterface implements the control logic for reconciling shooted seeds. It is implemented as an interface to allow for extensions that provide different semantics. Currently, there is only one implementation.
func NewDefaultSeedRegistrationControl ¶
func NewDefaultSeedRegistrationControl(clientMap clientmap.ClientMap, recorder record.EventRecorder, logger *logrus.Logger) SeedRegistrationControlInterface
NewDefaultSeedRegistrationControl returns a new instance of the default implementation of the SeedRegistrationControlInterface that implements the documented semantics for registering shooted seeds. You should use an instance returned from NewDefaultSeedRegistrationControl() for any scenario other than testing.