Documentation

Index

Constants

View Source
const (
	// FinalizerPrefix is the prefix name of the finalizer written by this controller.
	FinalizerPrefix = "extensions.gardener.cloud"
)

Variables

This section is empty.

Functions

func Add

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

Add adds an Extension controller to the given manager using the given AddArgs.

func ClusterToExtensionMapper

func ClusterToExtensionMapper(predicates ...predicate.Predicate) handler.Mapper

ClusterToExtensionMapper returns a mapper that returns requests for Extensions whose referenced clusters have been modified.

func DefaultPredicates

func DefaultPredicates(ignoreOperationAnnotation bool) []predicate.Predicate

DefaultPredicates returns the default predicates for an extension reconciler.

func NewReconciler

func NewReconciler(args AddArgs) reconcile.Reconciler

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

Types

type Actuator

type Actuator interface {
	// Reconcile the Extension resource.
	Reconcile(ctx context.Context, ex *extensionsv1alpha1.Extension) error
	// Delete the Extension resource.
	Delete(ctx context.Context, ex *extensionsv1alpha1.Extension) error
}

Actuator acts upon Extension resources.

type AddArgs

type AddArgs struct {
	// Actuator is an Extension resource actuator.
	Actuator Actuator
	// Name is the name of the controller.
	Name string
	// FinalizerSuffix is the suffix for the finalizer name.
	FinalizerSuffix string
	// 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.
	Predicates []predicate.Predicate
	// Resync determines the requeue interval.
	Resync time.Duration
	// Type is the type of the resource considered for reconciliation.
	Type string
}

AddArgs are arguments for adding an Extension resources controller to a manager.