Documentation ¶
Index ¶
- Constants
- func EquiSetForKind(kind string, groups ...string) []metav1.GroupKind
- func SecretToManagedResourceMapper(client client.Client, predicates ...predicate.Predicate) handler.Mapper
- type ClassFilter
- func (f *ClassFilter) Active(o runtime.Object) (action bool, responsible bool)
- func (f *ClassFilter) Create(e event.CreateEvent) bool
- func (f *ClassFilter) Delete(e event.DeleteEvent) bool
- func (f *ClassFilter) FinalizerName() string
- func (f *ClassFilter) Generic(e event.GenericEvent) bool
- func (f *ClassFilter) ResourceClass() string
- func (f *ClassFilter) Responsible(o runtime.Object) bool
- func (f *ClassFilter) Update(e event.UpdateEvent) bool
- type GroupKindSet
- type ObjectIndex
- func (i ObjectIndex) Found(ref resourcesv1alpha1.ObjectReference) bool
- func (i ObjectIndex) GetEquivalencesFor(gk metav1.GroupKind) GroupKindSet
- func (i ObjectIndex) Lookup(ref resourcesv1alpha1.ObjectReference) (resourcesv1alpha1.ObjectReference, bool)
- func (i *ObjectIndex) Objects() map[string]resourcesv1alpha1.ObjectReference
- type Reconciler
Constants ¶
const DefaultClass = "resources"
DefaultClass is used a resource class is no class is specified on the command line
const ( // FinalizerName is the finalizer base name that is injected into ManagedResources. // The concrete finalizer is finally componed by this base name and the resource class. FinalizerName = "resources.gardener.cloud/gardener-resource-manager" )
Variables ¶
This section is empty.
Functions ¶
Types ¶
type ClassFilter ¶
type ClassFilter struct {
// contains filtered or unexported fields
}
ClassFilter keeps the resource class for the actual controller instance and is used as Filter predicate for events finally passed to the controller
func NewClassFilter ¶
func NewClassFilter(class string) *ClassFilter
NewClassFilter returns a new `ClassFilter` instance.
func (*ClassFilter) Active ¶
func (f *ClassFilter) Active(o runtime.Object) (action bool, responsible bool)
Active checks whether a dedicated object must be handled by the actual controller instance. This is split into two conditions. An object must be handled if it has already been handled, indicated by the actual finalizer, or if the actual controller is responsible for the object.
func (*ClassFilter) Create ¶
func (f *ClassFilter) Create(e event.CreateEvent) bool
Create implements `predicate.Predicate`.
func (*ClassFilter) Delete ¶
func (f *ClassFilter) Delete(e event.DeleteEvent) bool
Delete implements `predicate.Predicate`.
func (*ClassFilter) FinalizerName ¶
func (f *ClassFilter) FinalizerName() string
FinalizerName determines the finalizer name to be used for the actual resource class
func (*ClassFilter) Generic ¶
func (f *ClassFilter) Generic(e event.GenericEvent) bool
Generic implements `predicate.Predicate`.
func (*ClassFilter) ResourceClass ¶
func (f *ClassFilter) ResourceClass() string
ResourceClass returns the actually configured resource class
func (*ClassFilter) Responsible ¶
func (f *ClassFilter) Responsible(o runtime.Object) bool
Responsible checks whether an object should be managed by the actual controller instance
func (*ClassFilter) Update ¶
func (f *ClassFilter) Update(e event.UpdateEvent) bool
Update implements `predicate.Predicate`.
type GroupKindSet ¶
func (GroupKindSet) Delete ¶
func (s GroupKindSet) Delete(gks ...metav1.GroupKind) GroupKindSet
func (GroupKindSet) Insert ¶
func (s GroupKindSet) Insert(gks ...metav1.GroupKind) GroupKindSet
type ObjectIndex ¶
type ObjectIndex struct {
// contains filtered or unexported fields
}
func NewObjectIndex ¶
func NewObjectIndex(resources []resourcesv1alpha1.ObjectReference, equis equivalences) *ObjectIndex
func (ObjectIndex) Found ¶
func (i ObjectIndex) Found(ref resourcesv1alpha1.ObjectReference) bool
func (ObjectIndex) GetEquivalencesFor ¶
func (i ObjectIndex) GetEquivalencesFor(gk metav1.GroupKind) GroupKindSet
func (ObjectIndex) Lookup ¶
func (i ObjectIndex) Lookup(ref resourcesv1alpha1.ObjectReference) (resourcesv1alpha1.ObjectReference, bool)
func (*ObjectIndex) Objects ¶
func (i *ObjectIndex) Objects() map[string]resourcesv1alpha1.ObjectReference
type Reconciler ¶
type Reconciler struct {
// contains filtered or unexported fields
}
Reconciler contains information in order to reconcile instances of ManagedResource.
func NewReconciler ¶
func NewReconciler(ctx context.Context, log logr.Logger, c, targetClient client.Client, targetRESTMapper *restmapper.DeferredDiscoveryRESTMapper, class *ClassFilter, syncPeriod time.Duration) *Reconciler
NewReconciler creates a new reconciler with the given target client.