utils

package
v1.29.0 Latest Latest
Warning

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

Go to latest
Published: May 26, 2025 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const DebounceKeySuffix = ":in_queue"

Variables

View Source
var ErrNextLoop = errors.New("stop this loop and return the associated Result object")

ErrNextLoop is not a real error. It forces the current reconciliation loop to stop and return the associated Result object

View Source
var ErrTerminateLoop = errors.New("stop this loop and do not requeue")

ErrTerminateLoop is not a real error. It forces the current reconciliation loop to stop

Functions

func CalculateExponentialBackoffWithJitter

func CalculateExponentialBackoffWithJitter(retryCount int64) time.Duration

func CompareAndGetObjectHash added in v1.28.0

func CompareAndGetObjectHash(hash string, obj ...any) (bool, string)

func CurrentNamespace

func CurrentNamespace() string

func DebouncedReconcileCheck

func DebouncedReconcileCheck(ctx context.Context, lastProcessedItems *sync.Map, name types.NamespacedName) (runNow bool, alreadyQueued bool, waitTime time.Duration)

func EscapeJSONPointer added in v1.26.3

func EscapeJSONPointer(s string) string

EscapeJSONPointer escapes a string according to the JSON Pointer spec (RFC 6901). It escapes '~' as '~0' and '/' as '~1'.

func FindRootOwnerReference added in v1.26.9

func FindRootOwnerReference(ctx context.Context, c client.Client, namespace string, obj metav1.Object) (*metav1.OwnerReference, error)

FindRootOwnerReference recursively finds the root owner reference for a given object (e.g. Pod).

func GetObjectHash

func GetObjectHash(objs ...any) string

GetObjectHash generates a shorter FNV-1a hash for one or more objects

func HandleFinalizer

func HandleFinalizer[T client.Object](
	ctx context.Context,
	obj T,
	r client.Client,
	deleteHook func(context.Context, T) (bool, error),
) (shouldReturn bool, err error)

HandleFinalizer ensures proper finalizer management for Kubernetes resources. It automatically adds the finalizer when needed, and removes it after successful cleanup. Returns (shouldReturn, err):

  • shouldReturn: true if the caller should immediately return and wait for the next reconcile.
  • err: any error encountered during update or deleteHook.

func IsPodConditionTrue

func IsPodConditionTrue(conditions []corev1.PodCondition, conditionType corev1.PodConditionType) bool

func IsPodTerminated added in v1.26.15

func IsPodTerminated(pod *corev1.Pod) bool

Types

This section is empty.

Jump to

Keyboard shortcuts

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