Documentation ¶
Index ¶
- func Published(defined schema.GroupVersionKind) schema.GroupVersionKind
- func Setup(mgr ctrl.Manager, log logging.Logger) error
- type CRDRenderFn
- type CRDRenderer
- type ControllerEngine
- type EnqueueRequestForRequirement
- func (e *EnqueueRequestForRequirement) Create(evt event.CreateEvent, q workqueue.RateLimitingInterface)
- func (e *EnqueueRequestForRequirement) Delete(evt event.DeleteEvent, q workqueue.RateLimitingInterface)
- func (e *EnqueueRequestForRequirement) Generic(evt event.GenericEvent, q workqueue.RateLimitingInterface)
- func (e *EnqueueRequestForRequirement) Update(evt event.UpdateEvent, q workqueue.RateLimitingInterface)
- type Finalizer
- type MultiFinalizer
- type Reconciler
- type ReconcilerOption
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Published ¶
func Published(defined schema.GroupVersionKind) schema.GroupVersionKind
Published GroupVersionKind that corresponds to the supplied defined GroupVersionKind.
Types ¶
type CRDRenderFn ¶
type CRDRenderFn func(d *v1alpha1.InfrastructureDefinition, p *v1alpha1.InfrastructurePublication) (*v1beta1.CustomResourceDefinition, error)
A CRDRenderFn renders an InfrastructurePublication's corresponding CustomResourceDefinition.
func (CRDRenderFn) Render ¶
func (fn CRDRenderFn) Render(d *v1alpha1.InfrastructureDefinition, p *v1alpha1.InfrastructurePublication) (*v1beta1.CustomResourceDefinition, error)
Render the supplied InfrastructurePublication's corresponding CustomResourceDefinition.
type CRDRenderer ¶
type CRDRenderer interface {
Render(d *v1alpha1.InfrastructureDefinition, p *v1alpha1.InfrastructurePublication) (*v1beta1.CustomResourceDefinition, error)
}
A CRDRenderer renders an InfrastructurePublication's corresponding CustomResourceDefinition.
type ControllerEngine ¶
type ControllerEngine interface { IsRunning(name string) bool Start(name string, o kcontroller.Options, w ...controller.Watch) error Stop(name string) }
A ControllerEngine can start and stop Kubernetes controllers on demand.
type EnqueueRequestForRequirement ¶
type EnqueueRequestForRequirement struct{}
EnqueueRequestForRequirement enqueues a reconcile.Request for the NamespacedName of a RequirementReferencer's RequirementReference.
func (*EnqueueRequestForRequirement) Create ¶
func (e *EnqueueRequestForRequirement) Create(evt event.CreateEvent, q workqueue.RateLimitingInterface)
Create adds a NamespacedName for the supplied CreateEvent if its Object is a RequirementReferencer.
func (*EnqueueRequestForRequirement) Delete ¶
func (e *EnqueueRequestForRequirement) Delete(evt event.DeleteEvent, q workqueue.RateLimitingInterface)
Delete adds a NamespacedName for the supplied DeleteEvent if its Object is a RequirementReferencer.
func (*EnqueueRequestForRequirement) Generic ¶
func (e *EnqueueRequestForRequirement) Generic(evt event.GenericEvent, q workqueue.RateLimitingInterface)
Generic adds a NamespacedName for the supplied GenericEvent if its Object is a RequirementReferencer.
func (*EnqueueRequestForRequirement) Update ¶
func (e *EnqueueRequestForRequirement) Update(evt event.UpdateEvent, q workqueue.RateLimitingInterface)
Update adds a NamespacedName for the supplied UpdateEvent if its Objects are RequirementReferencers.
type Finalizer ¶
type Finalizer interface { AddFinalizer(ctx context.Context, o ...resource.Object) error RemoveFinalizer(ctx context.Context, o ...resource.Object) error }
A Finalizer adds and removes finalizers to and from object metadata.
type MultiFinalizer ¶
type MultiFinalizer struct {
// contains filtered or unexported fields
}
An MultiFinalizer manages a finalizer for multiple objects.
func NewMultiFinalizer ¶
func NewMultiFinalizer(f resource.Finalizer) *MultiFinalizer
NewMultiFinalizer returns a resource.Finalizer that manages a finalizer for multiple objects.
func (*MultiFinalizer) AddFinalizer ¶
AddFinalizer to the supplied objects.
func (*MultiFinalizer) RemoveFinalizer ¶
RemoveFinalizer from the supplies objects.
type Reconciler ¶
type Reconciler struct {
// contains filtered or unexported fields
}
A Reconciler reconciles InfrastructurePublications.
func NewReconciler ¶
func NewReconciler(mgr manager.Manager, opts ...ReconcilerOption) *Reconciler
NewReconciler returns a Reconciler of InfrastructurePublications.
type ReconcilerOption ¶
type ReconcilerOption func(*Reconciler)
ReconcilerOption is used to configure the Reconciler.
func WithCRDRenderer ¶
func WithCRDRenderer(c CRDRenderer) ReconcilerOption
WithCRDRenderer specifies how the Reconciler should render an InfrastructurePublication's corresponding CustomResourceDefinition.
func WithControllerEngine ¶
func WithControllerEngine(c ControllerEngine) ReconcilerOption
WithControllerEngine specifies how the Reconciler should manage the lifecycles of requirement controllers.
func WithFinalizer ¶
func WithFinalizer(f Finalizer) ReconcilerOption
WithFinalizer specifies how the Reconciler should finalize InfrastructurePublications and InfrastructureDefinitions.
func WithLogger ¶
func WithLogger(log logging.Logger) ReconcilerOption
WithLogger specifies how the Reconciler should log messages.
func WithRecorder ¶
func WithRecorder(er event.Recorder) ReconcilerOption
WithRecorder specifies how the Reconciler should record Kubernetes events.