Help us shape the future of Go! Take the 2026 Go Developer Survey

controlplane

package
v1.154.1 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2026 License: Apache-2.0 Imports: 28 Imported by: 30

Documentation

Index

Constants

View Source
const (
	// FinalizerName is the ControlPlane controller finalizer.
	FinalizerName = "extensions.gardener.cloud/controlplane"
	// ControllerName is the name of the controller
	ControllerName = "controlplane"
)
View Source
const RequeueAfter = 2 * time.Second

RequeueAfter is the duration to requeue a controlplane reconciliation if indicated by the actuator.

Variables

This section is empty.

Functions

func Add

func Add(mgr manager.Manager, args AddArgs) error

Add creates a new ControlPlane Controller and adds it to the Manager. and Start it when the Manager is Started.

func ClusterToControlPlaneMapper

func ClusterToControlPlaneMapper(reader client.Reader, predicates []predicate.Predicate) handler.MapFunc

ClusterToControlPlaneMapper returns a mapper that returns requests for ControlPlanes whose referenced clusters have been modified.

func ComputeChecksums

func ComputeChecksums(secrets map[string]*corev1.Secret, cms map[string]*corev1.ConfigMap) map[string]string

ComputeChecksums computes and returns SAH256 checksums for the given secrets and configmaps.

func DefaultPredicates

func DefaultPredicates(ctx context.Context, mgr manager.Manager, ignoreOperationAnnotation bool) []predicate.Predicate

DefaultPredicates returns the default predicates for a controlplane reconciler.

func MergeSecretMaps

func MergeSecretMaps(a, b map[string]*corev1.Secret) map[string]*corev1.Secret

MergeSecretMaps merges the 2 given secret maps.

func NewReconciler

func NewReconciler(mgr manager.Manager, actuator Actuator) reconcile.Reconciler

NewReconciler creates a new reconcile.Reconciler that reconciles controlplane resources of Gardener's `extensions.gardener.cloud` API group.

Types

type Actuator

type Actuator interface {
	// Reconcile reconciles the ControlPlane.
	Reconcile(context.Context, logr.Logger, *extensionsv1alpha1.ControlPlane, *extensionscontroller.Cluster) (bool, error)
	// Delete deletes the ControlPlane.
	Delete(context.Context, logr.Logger, *extensionsv1alpha1.ControlPlane, *extensionscontroller.Cluster) error
	// ForceDelete forcefully deletes the ControlPlane.
	ForceDelete(context.Context, logr.Logger, *extensionsv1alpha1.ControlPlane, *extensionscontroller.Cluster) error
	// Restore restores the ControlPlane.
	Restore(context.Context, logr.Logger, *extensionsv1alpha1.ControlPlane, *extensionscontroller.Cluster) (bool, error)
	// Migrate migrates the ControlPlane.
	Migrate(context.Context, logr.Logger, *extensionsv1alpha1.ControlPlane, *extensionscontroller.Cluster) error
}

Actuator acts upon ControlPlane resources.

type AddArgs

type AddArgs struct {
	// Actuator is a controlplane actuator.
	Actuator Actuator
	// ControllerOptions are the controller options used for creating a controller.
	// The options.Reconciler is always overridden with a reconciler created from the
	// given actuator.
	ControllerOptions controller.Options
	// Predicates are the predicates to use.
	// If unset, GenerationChangedPredicate will be used.
	Predicates []predicate.Predicate
	// Type is the type of the resource considered for reconciliation.
	Type string
	// IgnoreOperationAnnotation specifies whether to ignore the operation annotation or not.
	// If the annotation is not ignored, the extension controller will only reconcile
	// with a present operation annotation typically set during a reconcile (e.g. in the maintenance time) by the Gardenlet
	IgnoreOperationAnnotation bool
	// ExtensionClasses defines the extension classes this controller is responsible for.
	ExtensionClasses []extensionsv1alpha1.ExtensionClass
}

AddArgs are arguments for adding a ControlPlane controller to a manager.

Directories

Path Synopsis
mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.

Jump to

Keyboard shortcuts

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