extension

package
v1.108.1 Latest Latest
Warning

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

Go to latest
Published: Nov 21, 2024 License: Apache-2.0 Imports: 23 Imported by: 23

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(ctx context.Context, mgr manager.Manager, args AddArgs) error

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

func ClusterToExtensionMapper

func ClusterToExtensionMapper(mgr manager.Manager, predicates ...predicate.Predicate) mapper.Mapper

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

func DefaultPredicates

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

DefaultPredicates returns the default predicates for an extension reconciler.

func NewReconciler

func NewReconciler(mgr manager.Manager, 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(context.Context, logr.Logger, *extensionsv1alpha1.Extension) error
	// Delete the Extension resource.
	Delete(context.Context, logr.Logger, *extensionsv1alpha1.Extension) error
	// ForceDelete forcefully deletes the Extension resource.
	ForceDelete(context.Context, logr.Logger, *extensionsv1alpha1.Extension) error
	// Restore the Extension resource.
	Restore(context.Context, logr.Logger, *extensionsv1alpha1.Extension) error
	// Migrate the Extension resource.
	Migrate(context.Context, logr.Logger, *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
	// 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
	// ExtensionClass defines the extension class this extension is responsible for.
	ExtensionClass extensionsv1alpha1.ExtensionClass
}

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

Jump to

Keyboard shortcuts

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