controller

package
v0.0.0-...-2faeebd Latest Latest
Warning

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

Go to latest
Published: Jul 15, 2019 License: Apache-2.0, MIT Imports: 34 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (

	// AddToScheme adds the Kubernetes and extension scheme to the given scheme.
	AddToScheme = localSchemeBuilder.AddToScheme

	// ExtensionsScheme is the default scheme for extensions, consisting of all Kubernetes built-in
	// schemes (client-go/kubernetes/scheme) and the extensions/v1alpha1 scheme.
	ExtensionsScheme = runtime.NewScheme()
)
View Source
var PredicateLog logr.Logger = log.Log

PredicateLog is the logger for predicates.

Functions

func AnnotationsChangedPredicate

func AnnotationsChangedPredicate() predicate.Predicate

AnnotationsChangedPredicate is a predicate for annotations changes.

func CloudProfileFromCluster

func CloudProfileFromCluster(cluster *extensionsv1alpha1.Cluster) (*gardenv1beta1.CloudProfile, error)

CloudProfileFromCluster returns the CloudProfile resource inside the Cluster resource.

func CloudProfileGenerationUpdatePredicate

func CloudProfileGenerationUpdatePredicate() predicate.Predicate

CloudProfileGenerationUpdatePredicate is a predicate for generation updates of cloud profiles.

func ClusterToObjectMapper

func ClusterToObjectMapper(client client.Client, newObjListFunc func() runtime.Object, predicates []predicate.Predicate) handler.Mapper

ClusterToObjectMapper returns a mapper that returns requests for objects whose referenced clusters have been modified.

func CreateEventLogValues

func CreateEventLogValues(event event.CreateEvent) []interface{}

CreateEventLogValues extracts the log values from the given CreateEvent.

func CreateEventLogger

func CreateEventLogger(log logr.Logger, event event.CreateEvent) logr.Logger

CreateEventLogger creates a Logger with keys and values from the given CreateEvent.

func CreateOrUpdate

func CreateOrUpdate(ctx context.Context, c client.Client, obj runtime.Object, transform func() error) error

CreateOrUpdate creates or updates the object. Optionally, it executes a transformation function before the request is made.

func DeleteEventLogValues

func DeleteEventLogValues(event event.DeleteEvent) []interface{}

DeleteEventLogValues extracts the log values from the given DeleteEvent.

func DeleteEventLogger

func DeleteEventLogger(log logr.Logger, event event.DeleteEvent) logr.Logger

DeleteEventLogger creates a Logger with keys and values from the given DeleteEvent.

func DeleteFinalizer

func DeleteFinalizer(ctx context.Context, client client.Client, finalizerName string, obj runtime.Object) error

DeleteFinalizer ensures that the given finalizer is not present anymore in the given object. If it is set, it removes it and issues an update.

func EnsureFinalizer

func EnsureFinalizer(ctx context.Context, client client.Client, finalizerName string, obj runtime.Object) error

EnsureFinalizer ensures that a finalizer of the given name is set on the given object. If the finalizer is not set, it adds it to the list of finalizers and updates the remote object.

func EvalGenericPredicate

func EvalGenericPredicate(obj runtime.Object, predicates ...predicate.Predicate) bool

EvalGenericPredicate returns true if all predicates match for the given object.

func GenerationChangedPredicate

func GenerationChangedPredicate() predicate.Predicate

GenerationChangedPredicate is a predicate for generation changes.

func GenericEventLogValues

func GenericEventLogValues(event event.GenericEvent) []interface{}

GenericEventLogValues extracts the log values from the given GenericEvent.

func GenericEventLogger

func GenericEventLogger(log logr.Logger, event event.GenericEvent) logr.Logger

GenericEventLogger creates a Logger with keys and values from the given GenericEvent.

func GetControlPlaneReplicas

func GetControlPlaneReplicas(shoot *gardenv1beta1.Shoot, scaledDown bool, wokenUp int) int

GetControlPlaneReplicas returns the woken up replicas for controlplane components of the given Shoot that should only be scaled down at the end of the flow.

func GetPodNetwork

func GetPodNetwork(shoot *gardenv1beta1.Shoot) gardencorev1alpha1.CIDR

GetPodNetwork returns the pod network CIDR of the given Shoot.

func GetReplicas

func GetReplicas(shoot *gardenv1beta1.Shoot, wokenUp int) int

GetReplicas returns the woken up replicas of the given Shoot.

func GetSecretByReference

func GetSecretByReference(ctx context.Context, c client.Client, ref *corev1.SecretReference) (*corev1.Secret, error)

GetSecretByReference returns the Secret object matching the given SecretReference.

func HasFinalizer

func HasFinalizer(obj runtime.Object, finalizerName string) (bool, error)

HasFinalizer checks if the given object has a finalizer with the given name.

func IsHibernated

func IsHibernated(shoot *gardenv1beta1.Shoot) bool

IsHibernated returns true if the shoot is hibernated, or false otherwise.

func LastError

func LastError(description string, codes ...gardencorev1alpha1.ErrorCode) *gardencorev1alpha1.LastError

LastError creates a new LastError from the given parameters.

func LastOperation

LastOperation creates a new LastOperation from the given parameters.

func MapperWithinNamespace

func MapperWithinNamespace(cl client.Client, newObjListFunc func() runtime.Object, predicates []predicate.Predicate) handler.ToRequestsFunc

MapperWithinNamespace returns a `ToRequestsFunc` that maps objects within the same namespace as the given MapObject.

func MetaObjectLogValues

func MetaObjectLogValues(obj metav1.Object) []interface{}

MetaObjectLogValues extracts the log values from the given metav1.Object.

func NamePredicate

func NamePredicate(name string) predicate.Predicate

NamePredicate returns a predicate that matches the given name of a resource.

func NewGenericEvent

func NewGenericEvent(meta metav1.Object, obj runtime.Object) event.GenericEvent

NewGenericEvent creates a new GenericEvent from the given metav1.Object and runtime.Object.

func NewGenericEventFromObject

func NewGenericEventFromObject(obj runtime.Object) event.GenericEvent

NewGenericEventFromObject creates a new GenericEvent from the given runtime.Object.

It tries to extract a metav1.Object from the given Object. If it fails, the Meta of the resulting GenericEvent will be `nil`.

func OrPredicate

func OrPredicate(predicates ...predicate.Predicate) predicate.Predicate

OrPredicate builds a logical OR gate of passed predicates.

func PrefixLogValues

func PrefixLogValues(prefix string, logValues []interface{}) []interface{}

PrefixLogValues prefixes the keys of the given logValues with the given prefix.

func ReconcileErr

func ReconcileErr(err error) (reconcile.Result, error)

ReconcileErr returns a reconcile.Result or an error, depending on whether the error is a RequeueAfterError or not.

func ReconcileErrCause

func ReconcileErrCause(err error) error

ReconcileErrCause returns the cause in case the error is an RequeueAfterError. Otherwise, it returns the input error.

func ReconcileErrCauseOrErr

func ReconcileErrCauseOrErr(err error) error

ReconcileErrCauseOrErr returns the cause of the error or the error if the cause is nil.

func ReconcileError

ReconcileError returns a LastOperation with state error and a LastError with the given description and codes.

func ReconcileSucceeded

ReconcileSucceeded returns a LastOperation with state succeeded at 100 percent and a nil LastError.

func RuntimeObjectLogValues

func RuntimeObjectLogValues(obj runtime.Object) []interface{}

RuntimeObjectLogValues extracts the log values from the given runtime.Object.

func SecretReferenceToKey

func SecretReferenceToKey(ref *corev1.SecretReference) client.ObjectKey

SecretReferenceToKey returns the key of the given SecretReference.

func SeedFromCluster

func SeedFromCluster(cluster *extensionsv1alpha1.Cluster) (*gardenv1beta1.Seed, error)

SeedFromCluster returns the Seed resource inside the Cluster resource.

func SetupSignalHandlerContext

func SetupSignalHandlerContext() context.Context

SetupSignalHandlerContext sets up a context from signals.SetupSignalHandler stop channel.

func ShootFailedPredicate

func ShootFailedPredicate(c client.Client) predicate.Predicate

ShootFailedPredicate is a predicate for failed shoots.

func ShootFromCluster

func ShootFromCluster(cluster *extensionsv1alpha1.Cluster) (*gardenv1beta1.Shoot, error)

ShootFromCluster returns the Shoot resource inside the Cluster resource.

func ShootGenerationUpdatedPredicate

func ShootGenerationUpdatedPredicate() predicate.Predicate

ShootGenerationUpdatedPredicate is a predicate for generation updates of shoots.

func ShootIsFailed

func ShootIsFailed(shoot *gardenv1beta1.Shoot) bool

ShootIsFailed returns whether the given shoot is marked as 'failed'.

func TryUpdate

func TryUpdate(ctx context.Context, backoff wait.Backoff, c client.Client, obj runtime.Object, transform func() error) error

TryUpdate tries to apply the given transformation function onto the given object, and to update it afterwards. It retries the update with an exponential backoff.

func TryUpdateStatus

func TryUpdateStatus(ctx context.Context, backoff wait.Backoff, c client.Client, obj runtime.Object, transform func() error) error

TryUpdateStatus tries to apply the given transformation function onto the given object, and to update its status afterwards. It retries the status update with an exponential backoff.

func TypePredicate

func TypePredicate(typeName string) predicate.Predicate

TypePredicate filters the incoming OperatingSystemConfigs for ones that have the same type as the given type.

func UnsafeGuessKind

func UnsafeGuessKind(obj runtime.Object) string

UnsafeGuessKind makes an unsafe guess what is the kind of the given object.

The argument to this method _has_ to be a pointer, otherwise it panics.

func UpdateEventLogValues

func UpdateEventLogValues(event event.UpdateEvent) []interface{}

UpdateEventLogValues extracts the log values from the given UpdateEvent.

func UpdateEventLogger

func UpdateEventLogger(log logr.Logger, event event.UpdateEvent) logr.Logger

UpdateEventLogger creates a Logger with keys and values from the given UpdateEvent.

Types

type AddToManagerBuilder

type AddToManagerBuilder []func(manager.Manager) error

AddToManagerBuilder aggregates various AddToManager functions.

func NewAddToManagerBuilder

func NewAddToManagerBuilder(funcs ...func(manager.Manager) error) AddToManagerBuilder

NewAddToManagerBuilder creates a new AddToManagerBuilder and registers the given functions.

func (*AddToManagerBuilder) AddToManager

func (a *AddToManagerBuilder) AddToManager(m manager.Manager) error

AddToManager traverses over all AddToManager-functions of this builder, sequentially applying them. It exits on the first error and returns it.

func (*AddToManagerBuilder) Register

func (a *AddToManagerBuilder) Register(funcs ...func(manager.Manager) error)

Register registers the given functions in this builder.

type Cluster

type Cluster struct {
	CloudProfile *gardenv1beta1.CloudProfile
	Seed         *gardenv1beta1.Seed
	Shoot        *gardenv1beta1.Shoot
}

Cluster contains the decoded resources of Gardener's extension Cluster resource. TODO: Change from `gardenv1beta1` to `gardencorev1alpha1` once we have moved the resources there.

func GetCluster

func GetCluster(ctx context.Context, c client.Client, namespace string) (*Cluster, error)

GetCluster tries to read Gardener's Cluster extension resource in the given namespace.

type WatchBuilder

type WatchBuilder []func(controller.Controller) error

WatchBuilder holds various functions which add watch controls to the passed Controller.

func NewWatchBuilder

func NewWatchBuilder(funcs ...func(controller.Controller) error) WatchBuilder

NewWatchBuilder creates a new WatchBuilder and registers the given functions.

func (*WatchBuilder) AddToController

func (w *WatchBuilder) AddToController(ctrl controller.Controller) error

AddToController adds the registered watches to the passed controller.

func (*WatchBuilder) Register

func (w *WatchBuilder) Register(funcs ...func(controller.Controller) error)

Register adds a function which add watch controls to the passed Controller to the WatchBuilder.

Jump to

Keyboard shortcuts

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