utils

package
v0.25.1 Latest Latest
Warning

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

Go to latest
Published: Jul 21, 2021 License: Apache-2.0, MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ContextFromStopChannel added in v0.13.0

func ContextFromStopChannel(stopCh <-chan struct{}) context.Context

ContextFromStopChannel creates a new context from a given stop channel.

func EvalGenericPredicate

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

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

func NewErrorFormatFuncWithPrefix added in v0.13.0

func NewErrorFormatFuncWithPrefix(prefix string) multierror.ErrorFormatFunc

NewErrorFormatFuncWithPrefix creates a new multierror.ErrorFormatFunc which can be used as an ErrorFormat on multierror.Error instances. The error string is prefixed with <prefix>, all errors are concatenated at the end. This is similar to multierror.ListFormatFunc but does not use any escape sequences, which will look weird in the status of Kubernetes objects or controller logs.

func TryUpdate

func TryUpdate(ctx context.Context, backoff wait.Backoff, c client.Client, obj client.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 client.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 TypedCreateOrUpdate added in v0.13.0

func TypedCreateOrUpdate(ctx context.Context, c client.Client, scheme *runtime.Scheme, obj *unstructured.Unstructured, alwaysUpdate bool, mutate func() error) (controllerutil.OperationResult, error)

TypedCreateOrUpdate is like controllerutil.CreateOrUpdate, it retrieves the current state of the object from the API server, applies the given mutate func and creates or updates it afterwards. In contrast to controllerutil.CreateOrUpdate it tries to create a new typed object of obj's kind (using the provided scheme) to make typed Get requests in order to leverage the client's cache.

Types

This section is empty.

Jump to

Keyboard shortcuts

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