@@ -32,14 +32,16 @@ import (
3232 v1 "k8s.io/api/policy/v1"
3333 "k8s.io/apimachinery/pkg/labels"
3434 "k8s.io/apimachinery/pkg/util/errors"
35+ "k8s.io/client-go/informers"
3536 "k8s.io/client-go/kubernetes"
3637)
3738
3839type staticPodOperatorControllerBuilder struct {
3940 // clients and related
4041 staticPodOperatorClient v1helpers.StaticPodOperatorClient
4142 kubeClient kubernetes.Interface
42- kubeInformers v1helpers.KubeInformersForNamespaces
43+ kubeNamespaceInformers v1helpers.KubeInformersForNamespaces
44+ kubeClusterInformers informers.SharedInformerFactory
4345 configInformers externalversions.SharedInformerFactory
4446 clock clock.Clock
4547 eventRecorder events.Recorder
@@ -87,14 +89,16 @@ type staticPodOperatorControllerBuilder struct {
8789func NewBuilder (
8890 staticPodOperatorClient v1helpers.StaticPodOperatorClient ,
8991 kubeClient kubernetes.Interface ,
90- kubeInformers v1helpers.KubeInformersForNamespaces ,
92+ kubeNamespaceInformers v1helpers.KubeInformersForNamespaces ,
93+ clusterInformers informers.SharedInformerFactory ,
9194 configInformers externalversions.SharedInformerFactory ,
9295 clock clock.Clock ,
9396) Builder {
9497 return & staticPodOperatorControllerBuilder {
9598 staticPodOperatorClient : staticPodOperatorClient ,
9699 kubeClient : kubeClient ,
97- kubeInformers : kubeInformers ,
100+ kubeNamespaceInformers : kubeNamespaceInformers ,
101+ kubeClusterInformers : clusterInformers ,
98102 configInformers : configInformers ,
99103 clock : clock ,
100104 }
@@ -233,13 +237,13 @@ func (b *staticPodOperatorControllerBuilder) ToControllers() (manager.Controller
233237
234238 // ensure that all controllers that need the secret/configmap informer-based clients
235239 // need to wait for their synchronization before starting using WithInformer
236- configMapClient := v1helpers .CachedConfigMapGetter (b .kubeClient .CoreV1 (), b .kubeInformers )
237- secretClient := v1helpers .CachedSecretGetter (b .kubeClient .CoreV1 (), b .kubeInformers )
240+ configMapClient := v1helpers .CachedConfigMapGetter (b .kubeClient .CoreV1 (), b .kubeNamespaceInformers )
241+ secretClient := v1helpers .CachedSecretGetter (b .kubeClient .CoreV1 (), b .kubeNamespaceInformers )
238242 podClient := b .kubeClient .CoreV1 ()
239243 eventsClient := b .kubeClient .CoreV1 ()
240244 pdbClient := b .kubeClient .PolicyV1 ()
241- operandInformers := b .kubeInformers .InformersFor (b .operandNamespace )
242- clusterInformers := b .kubeInformers . InformersFor ( "" )
245+ operandInformers := b .kubeNamespaceInformers .InformersFor (b .operandNamespace )
246+ clusterInformers := b .kubeClusterInformers
243247 infraInformers := b .configInformers .Config ().V1 ().Infrastructures ()
244248
245249 var errs []error
@@ -337,7 +341,7 @@ func (b *staticPodOperatorControllerBuilder) ToControllers() (manager.Controller
337341 b .operandNamespace ,
338342 b .staticPodName ,
339343 b .staticPodOperatorClient ,
340- b .kubeInformers ,
344+ b .kubeNamespaceInformers ,
341345 b .enableStartMonitor ,
342346 eventRecorder ,
343347 ), 1 )
@@ -347,7 +351,7 @@ func (b *staticPodOperatorControllerBuilder) ToControllers() (manager.Controller
347351 b .operandNamespace ,
348352 b .operandPodLabelSelector ,
349353 b .staticPodOperatorClient ,
350- b .kubeInformers ,
354+ b .kubeNamespaceInformers ,
351355 b .enableStartMonitor ,
352356 b .eventRecorder ,
353357 ); err == nil {
@@ -376,7 +380,7 @@ func (b *staticPodOperatorControllerBuilder) ToControllers() (manager.Controller
376380 resourceapply .NewKubeClientHolder (b .kubeClient ),
377381 b .staticPodOperatorClient ,
378382 eventRecorder ,
379- ).AddKubeInformers (b .kubeInformers ), 1 )
383+ ).AddKubeInformers (b .kubeNamespaceInformers ), 1 )
380384
381385 manager .WithController (unsupportedconfigoverridescontroller .NewUnsupportedConfigOverridesController (b .operatorName , b .staticPodOperatorClient , eventRecorder ), 1 )
382386 manager .WithController (loglevel .NewClusterOperatorLoggingController (b .staticPodOperatorClient , eventRecorder ), 1 )
@@ -407,7 +411,7 @@ func (b *staticPodOperatorControllerBuilder) ToControllers() (manager.Controller
407411
408412 manager .WithController (missingstaticpodcontroller .New (
409413 b .staticPodOperatorClient ,
410- b .kubeInformers .InformersFor (b .operandNamespace ),
414+ b .kubeNamespaceInformers .InformersFor (b .operandNamespace ),
411415 b .eventRecorder ,
412416 b .operandNamespace ,
413417 b .staticPodName ,
0 commit comments