Skip to content

Commit 73a2b07

Browse files
timflannaganopenshift-merge-robot
authored andcommitted
catalog: Add an OG informer and register a lister
Signed-off-by: timflannagan <[email protected]>
1 parent 918a4d1 commit 73a2b07

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

pkg/controller/operators/catalog/operator.go

+21
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ type Operator struct {
103103
catsrcQueueSet *queueinformer.ResourceQueueSet
104104
subQueueSet *queueinformer.ResourceQueueSet
105105
ipQueueSet *queueinformer.ResourceQueueSet
106+
ogQueueSet *queueinformer.ResourceQueueSet
106107
nsResolveQueue workqueue.RateLimitingInterface
107108
namespace string
108109
recorder record.EventRecorder
@@ -182,6 +183,7 @@ func NewOperator(ctx context.Context, kubeconfigPath string, clock utilclock.Clo
182183
catsrcQueueSet: queueinformer.NewEmptyResourceQueueSet(),
183184
subQueueSet: queueinformer.NewEmptyResourceQueueSet(),
184185
ipQueueSet: queueinformer.NewEmptyResourceQueueSet(),
186+
ogQueueSet: queueinformer.NewEmptyResourceQueueSet(),
185187
catalogSubscriberIndexer: map[string]cache.Indexer{},
186188
serviceAccountQuerier: scoped.NewUserDefinedServiceAccountQuerier(logger, crClient),
187189
clientAttenuator: scoped.NewClientAttenuator(logger, config, opClient),
@@ -256,6 +258,24 @@ func NewOperator(ctx context.Context, kubeconfigPath string, clock utilclock.Clo
256258
return nil, err
257259
}
258260

261+
operatorGroupInformer := crInformerFactory.Operators().V1().OperatorGroups()
262+
op.lister.OperatorsV1().RegisterOperatorGroupLister(metav1.NamespaceAll, operatorGroupInformer.Lister())
263+
ogQueue := workqueue.NewNamedRateLimitingQueue(workqueue.DefaultControllerRateLimiter(), "ogs")
264+
op.ogQueueSet.Set(metav1.NamespaceAll, ogQueue)
265+
operatorGroupQueueInformer, err := queueinformer.NewQueueInformer(
266+
ctx,
267+
queueinformer.WithLogger(op.logger),
268+
queueinformer.WithQueue(ogQueue),
269+
queueinformer.WithInformer(operatorGroupInformer.Informer()),
270+
queueinformer.WithSyncer(queueinformer.LegacySyncHandler(op.syncResolvingNamespace).ToSyncer()),
271+
)
272+
if err != nil {
273+
return nil, err
274+
}
275+
if err := op.RegisterQueueInformer(operatorGroupQueueInformer); err != nil {
276+
return nil, err
277+
}
278+
259279
// Wire CatalogSources
260280
catsrcInformer := crInformerFactory.Operators().V1alpha1().CatalogSources()
261281
op.lister.OperatorsV1alpha1().RegisterCatalogSourceLister(metav1.NamespaceAll, catsrcInformer.Lister())
@@ -886,6 +906,7 @@ func (o *Operator) syncCatalogSources(obj interface{}) (syncError error) {
886906
func (o *Operator) isFailForwardEnabled(namespace string) (bool, error) {
887907
ogs, err := o.lister.OperatorsV1().OperatorGroupLister().OperatorGroups(namespace).List(labels.Everything())
888908
if err != nil {
909+
o.logger.Debugf("failed to list operatorgroups in the %s namespace: %v", namespace, err)
889910
// Couldn't list operatorGroups, assuming default upgradeStrategy
890911
// so existing behavior is observed for failed CSVs.
891912
return false, nil

0 commit comments

Comments
 (0)