generic

package
v2.0.0-...-a7294fb Latest Latest
Warning

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

Go to latest
Published: Dec 20, 2024 License: MIT Imports: 30 Imported by: 0

Documentation

Index

Constants

View Source
const NamespaceAnnotation = "serviceoperator.azure.com/operator-namespace"

NamespaceAnnotation defines the annotation name to use when marking a resource with the namespace of the managing operator.

Variables

This section is empty.

Functions

func NewRateLimiter

func NewRateLimiter(minBackoff time.Duration, maxBackoff time.Duration, additionalLimiters ...workqueue.TypedRateLimiter[reconcile.Request]) workqueue.TypedRateLimiter[reconcile.Request]

NewRateLimiter creates a new workqueue.Ratelimiter for use controlling the speed of reconciliation. It throttles individual requests exponentially and also controls for multiple requests.

func RegisterAll

func RegisterAll(
	mgr ctrl.Manager,
	fieldIndexer client.FieldIndexer,
	kubeClient kubeclient.Client,
	positiveConditions *conditions.PositiveConditionBuilder,
	objs []*registration.StorageType,
	options Options,
) error

func RegisterWebhooks

func RegisterWebhooks(mgr ctrl.Manager, objs []client.Object) error

Types

type GenericReconciler

type GenericReconciler struct {
	Reconciler                genruntime.Reconciler
	LoggerFactory             LoggerFactory
	KubeClient                kubeclient.Client
	Recorder                  record.EventRecorder
	Config                    config.Values
	GVK                       schema.GroupVersionKind
	PositiveConditions        *conditions.PositiveConditionBuilder
	RequeueIntervalCalculator interval.Calculator

	PanicHandler func()
}

GenericReconciler reconciles resources

func (*GenericReconciler) CommitUpdate

func (gr *GenericReconciler) CommitUpdate(
	ctx context.Context,
	log logr.Logger,
	original genruntime.MetaObject,
	obj genruntime.MetaObject,
	commitType kubeclient.CommitType,
) error

func (*GenericReconciler) Reconcile

func (gr *GenericReconciler) Reconcile(ctx context.Context, req ctrl.Request) (ctrl.Result, error)

Reconcile will take state in K8s and apply it to Azure

func (*GenericReconciler) WriteReadyConditionError

type LoggerFactory

type LoggerFactory func(genruntime.MetaObject) logr.Logger

type Options

type Options struct {
	controller.Options

	// options specific to our controller
	RequeueIntervalCalculator interval.Calculator
	Config                    config.Values
	LoggerFactory             func(obj metav1.Object) logr.Logger

	PanicHandler func()
}

Jump to

Keyboard shortcuts

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