From 9ccbee758e05764ec0d4dfea2e55ced385dfbd0f Mon Sep 17 00:00:00 2001 From: Knative Prow Robot Date: Wed, 13 Sep 2023 06:40:32 +0100 Subject: [PATCH] Do not use informer for startupTranslator (#1109) Co-authored-by: Kenjiro Nakayama --- pkg/reconciler/ingress/controller.go | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pkg/reconciler/ingress/controller.go b/pkg/reconciler/ingress/controller.go index 0a9d27aa6..9f25ca306 100644 --- a/pkg/reconciler/ingress/controller.go +++ b/pkg/reconciler/ingress/controller.go @@ -210,15 +210,17 @@ func NewController(ctx context.Context, cmw configmap.Watcher) *controller.Impl } logger.Infof("Priming the config with %d ingresses", len(ingressesToSync)) + // The startup translator uses clients instead of listeners to correctly list all + // resources at startup. startupTranslator := generator.NewIngressTranslator( func(ns, name string) (*corev1.Secret, error) { - return secretInformer.Lister().Secrets(ns).Get(name) + return kubernetesClient.CoreV1().Secrets(ns).Get(ctx, name, metav1.GetOptions{}) }, func(ns, name string) (*corev1.Endpoints, error) { - return endpointsInformer.Lister().Endpoints(ns).Get(name) + return kubernetesClient.CoreV1().Endpoints(ns).Get(ctx, name, metav1.GetOptions{}) }, func(ns, name string) (*corev1.Service, error) { - return serviceInformer.Lister().Services(ns).Get(name) + return kubernetesClient.CoreV1().Services(ns).Get(ctx, name, metav1.GetOptions{}) }, func(name string) (*corev1.Namespace, error) { return namespaceInformer.Lister().Get(name)