Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
var (
ImmutableChangeErr = errors.New("immutable field change attempted")
)
Functions ¶
func MutateFuncFor ¶ added in v0.85.0
func MutateFuncFor(existing, desired client.Object) controllerutil.MutateFn
MutateFuncFor returns a mutate function based on the existing resource's concrete type. It supports currently only the following types or else panics: - ConfigMap - Service - ServiceAccount - ClusterRole - ClusterRoleBinding - Role - RoleBinding - Deployment - DaemonSet - StatefulSet - ServiceMonitor - Ingress - HorizontalPodAutoscaler - Route - Secret In order for the operator to reconcile other types, they must be added here. The function returned takes no arguments but instead uses the existing and desired inputs here. Existing is expected to be set by the controller-runtime package through a client get call.
func ObjectIsNotNil ¶ added in v0.85.0
ObjectIsNotNil ensures that we only create an object IFF it isn't nil, and it's concrete type isn't nil either. This works around the Go type system by using reflection to verify its concrete type isn't nil.
Types ¶
type K8sManifestFactory ¶
type K8sManifestFactory[Params any] ManifestFactory[client.Object, Params]
func Factory ¶
func Factory[T client.Object, Params any](f ManifestFactory[T, Params]) K8sManifestFactory[Params]
func FactoryWithoutError ¶
func FactoryWithoutError[T client.Object, Params any](f SimpleManifestFactory[T, Params]) K8sManifestFactory[Params]
type ManifestFactory ¶
type Params ¶
type Params struct { Client client.Client Recorder record.EventRecorder Scheme *runtime.Scheme Log logr.Logger OtelCol v1beta1.OpenTelemetryCollector TargetAllocator *v1alpha1.TargetAllocator OpAMPBridge v1alpha1.OpAMPBridge Config config.Config }
Params holds the reconciliation-specific parameters.