Documentation

Index

Constants

View Source
const (
	// FinalizerName is the infrastructure controller finalizer.
	FinalizerName = "extensions.gardener.cloud/infrastructure"
	// ControllerName is the name of the controller.
	ControllerName = "infrastructure-controller"
)
View Source
const (
	// EventInfrastructureReconciliation an event reason to describe infrastructure reconciliation.
	EventInfrastructureReconciliation string = "InfrastructureReconciliation"
	// EventInfrastructureDeleton an event reason to describe infrastructure deletion.
	EventInfrastructureDeleton string = "InfrastructureDeleton"
)
View Source
const (
	// IgnoreOperationAnnotationFlag is the name of the command line flag to specify whether the operation annotation
	// is ignored or not.
	IgnoreOperationAnnotationFlag = "ignore-operation-annotation"
)

Variables

This section is empty.

Functions

func Add

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

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

    func ClusterToInfrastructureMapper

    func ClusterToInfrastructureMapper(client client.Client, predicates []predicate.Predicate) handler.Mapper

      ClusterToInfrastructureMapper returns a mapper that returns requests for Infrastructures whose referenced clusters have been modified.

      func DefaultPredicates

      func DefaultPredicates(client client.Client, typeName string, ignoreOperationAnnotation bool) []predicate.Predicate

        DefaultPredicates returns the default predicates for an infrastructure reconciler.

        func NewReconciler

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

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

          func OperationAnnotationPredicate

          func OperationAnnotationPredicate() predicate.Predicate

            OperationAnnotationPredicate is a predicate for the operation annotation.

            func SecretToInfrastructureMapper

            func SecretToInfrastructureMapper(client client.Client, predicates []predicate.Predicate) handler.Mapper

              SecretToInfrastructureMapper returns a mapper that returns requests for Infrastructures whose referenced secrets have been modified.

              Types

              type Actuator

              type Actuator interface {
              	// Reconcile the Infrastructure config.
              	Reconcile(context.Context, *extensionsv1alpha1.Infrastructure, *extensionscontroller.Cluster) error
              	// Delete the Infrastructure config.
              	Delete(context.Context, *extensionsv1alpha1.Infrastructure, *extensionscontroller.Cluster) error
              }

                Actuator acts upon Infrastructure resources.

                func OperationAnnotationWrapper

                func OperationAnnotationWrapper(actuator Actuator) Actuator

                  OperationAnnotationWrapper is a wrapper for an actuator that, after a successful reconcile, removes the Gardener operation annotation.

                  This is useful in conjunction with the OperationAnnotationPredicate.

                  type AddArgs

                  type AddArgs struct {
                  	// Actuator is an infrastructure 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
                  	// WatchBuilder defines additional watches on controllers that should be set up.
                  	WatchBuilder extensionscontroller.WatchBuilder
                  }

                    AddArgs are arguments for adding an infrastructure controller to a manager.

                    type ReconcilerConfig

                    type ReconcilerConfig struct {
                    	// IgnoreOperationAnnotation defines whether to ignore the operation annotation or not.
                    	IgnoreOperationAnnotation bool
                    }

                      ReconcilerConfig is a completed controller configuration.

                      func (*ReconcilerConfig) Apply

                      func (c *ReconcilerConfig) Apply(ignore *bool)

                        Apply sets the values of this ReconcilerConfig in the given controller.Options.

                        type ReconcilerOptions

                        type ReconcilerOptions struct {
                        	// IgnoreOperationAnnotation defines whether to ignore the operation annotation or not.
                        	IgnoreOperationAnnotation bool
                        	// contains filtered or unexported fields
                        }

                          ReconcilerOptions are command line options that can be set for controller.Options.

                          func (*ReconcilerOptions) AddFlags

                          func (c *ReconcilerOptions) AddFlags(fs *pflag.FlagSet)

                            AddFlags implements Flagger.AddFlags.

                            func (*ReconcilerOptions) Complete

                            func (c *ReconcilerOptions) Complete() error

                              Complete implements Completer.Complete.

                              func (*ReconcilerOptions) Completed

                              func (c *ReconcilerOptions) Completed() *ReconcilerConfig

                                Completed returns the completed ReconcilerConfig. Only call this if `Complete` was successful.