Documentation
¶
Index ¶
- func DefaultRateLimiter() workqueue.RateLimiter
- func HasControllerReferenceByObjectReference(obj metav1.Object, ref *corev1.ObjectReference, controller bool) bool
- func RateLimiterCtx(ctx context.Context) workqueue.RateLimiter
- func ReconcileRequestCtx(ctx context.Context) ctrl.Request
- func WithRateLimiter(ctx context.Context, rl workqueue.RateLimiter) context.Context
- func WithReconcileRequest(ctx context.Context, key ctrl.Request) context.Context
- type Interface
- type LazyLoader
- type SetupChecker
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DefaultRateLimiter ¶
func DefaultRateLimiter() workqueue.RateLimiter
DefaultRateLimiter returns a workqueue rate limiter with a starting value of 2 seconds opposed to controller-runtime's default one of 1 millisecond
func HasControllerReferenceByObjectReference ¶
func HasControllerReferenceByObjectReference(obj metav1.Object, ref *corev1.ObjectReference, controller bool) bool
HasControllerReferenceByObjectReference has controller owner reference
func RateLimiterCtx ¶
func RateLimiterCtx(ctx context.Context) workqueue.RateLimiter
RateLimiterCtx retrieves a RateLimiter from context. Returns nil if none
func ReconcileRequestCtx ¶
ReconcileRequestCtx retrieves a Request key from context returns an empty object if none
func WithRateLimiter ¶
WithRateLimiter stores a RateLimiter into context
Types ¶
type Interface ¶
type Interface interface { Name() string Setup(context.Context, manager.Manager, *zap.SugaredLogger) error }
Interface is a basic interface that every reconciler should implement to create a new controller and startup in the controller manager
type LazyLoader ¶
type LazyLoader interface { LazyLoad(context.Context, manager.Manager, *zap.SugaredLogger, SetupChecker) error Start(context.Context) error }
LazyLoader loads whenever dependencies are ready
func NewLazyLoader ¶
func NewLazyLoader(ctx context.Context, interval time.Duration) LazyLoader
NewLazyLoader constructs new LazyLoader for controllers
type SetupChecker ¶
type SetupChecker interface { Interface CheckSetup(context.Context, manager.Manager, *zap.SugaredLogger) error }
SetupChecker controllers with dependencies on other resources will need to implement this interface to allow lazy loading