From e287426d18334308044e7a3c326c2b22dd608165 Mon Sep 17 00:00:00 2001 From: Knative Prow Robot Date: Fri, 3 Nov 2023 06:31:33 +0000 Subject: [PATCH] fix closure variable in filtered factory (#2885) Co-authored-by: Reto Lehmann --- .../informers/factory/filtered/fake/fake_filtered_factory.go | 5 +++-- .../informers/factory/filtered/filtered_factory.go | 5 +++-- .../informers/factory/filtered/fake/fake_filtered_factory.go | 5 +++-- .../kube/informers/factory/filtered/filtered_factory.go | 5 +++-- .../cmd/injection-gen/generators/fake_filtered_factory.go | 5 +++-- codegen/cmd/injection-gen/generators/filtered_factory.go | 5 +++-- 6 files changed, 18 insertions(+), 12 deletions(-) diff --git a/client/injection/apiextensions/informers/factory/filtered/fake/fake_filtered_factory.go b/client/injection/apiextensions/informers/factory/filtered/fake/fake_filtered_factory.go index 7a620c77b9..5516f08948 100644 --- a/client/injection/apiextensions/informers/factory/filtered/fake/fake_filtered_factory.go +++ b/client/injection/apiextensions/informers/factory/filtered/fake/fake_filtered_factory.go @@ -45,14 +45,15 @@ func withInformerFactory(ctx context.Context) context.Context { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []externalversions.SharedInformerOption{} if injection.HasNamespaceScope(ctx) { opts = append(opts, externalversions.WithNamespace(injection.GetNamespaceScope(ctx))) } opts = append(opts, externalversions.WithTweakListOptions(func(l *v1.ListOptions) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, filtered.Key{Selector: selector}, + ctx = context.WithValue(ctx, filtered.Key{Selector: selectorVal}, externalversions.NewSharedInformerFactoryWithOptions(c, controller.GetResyncPeriod(ctx), opts...)) } return ctx diff --git a/client/injection/apiextensions/informers/factory/filtered/filtered_factory.go b/client/injection/apiextensions/informers/factory/filtered/filtered_factory.go index 7ba158139c..759414332a 100644 --- a/client/injection/apiextensions/informers/factory/filtered/filtered_factory.go +++ b/client/injection/apiextensions/informers/factory/filtered/filtered_factory.go @@ -53,14 +53,15 @@ func withInformerFactory(ctx context.Context) context.Context { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []externalversions.SharedInformerOption{} if injection.HasNamespaceScope(ctx) { opts = append(opts, externalversions.WithNamespace(injection.GetNamespaceScope(ctx))) } opts = append(opts, externalversions.WithTweakListOptions(func(l *v1.ListOptions) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, Key{Selector: selector}, + ctx = context.WithValue(ctx, Key{Selector: selectorVal}, externalversions.NewSharedInformerFactoryWithOptions(c, controller.GetResyncPeriod(ctx), opts...)) } return ctx diff --git a/client/injection/kube/informers/factory/filtered/fake/fake_filtered_factory.go b/client/injection/kube/informers/factory/filtered/fake/fake_filtered_factory.go index 79713fe4b1..b5bb695d29 100644 --- a/client/injection/kube/informers/factory/filtered/fake/fake_filtered_factory.go +++ b/client/injection/kube/informers/factory/filtered/fake/fake_filtered_factory.go @@ -45,14 +45,15 @@ func withInformerFactory(ctx context.Context) context.Context { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []informers.SharedInformerOption{} if injection.HasNamespaceScope(ctx) { opts = append(opts, informers.WithNamespace(injection.GetNamespaceScope(ctx))) } opts = append(opts, informers.WithTweakListOptions(func(l *v1.ListOptions) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, filtered.Key{Selector: selector}, + ctx = context.WithValue(ctx, filtered.Key{Selector: selectorVal}, informers.NewSharedInformerFactoryWithOptions(c, controller.GetResyncPeriod(ctx), opts...)) } return ctx diff --git a/client/injection/kube/informers/factory/filtered/filtered_factory.go b/client/injection/kube/informers/factory/filtered/filtered_factory.go index 1012636627..621a200537 100644 --- a/client/injection/kube/informers/factory/filtered/filtered_factory.go +++ b/client/injection/kube/informers/factory/filtered/filtered_factory.go @@ -53,14 +53,15 @@ func withInformerFactory(ctx context.Context) context.Context { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []informers.SharedInformerOption{} if injection.HasNamespaceScope(ctx) { opts = append(opts, informers.WithNamespace(injection.GetNamespaceScope(ctx))) } opts = append(opts, informers.WithTweakListOptions(func(l *v1.ListOptions) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, Key{Selector: selector}, + ctx = context.WithValue(ctx, Key{Selector: selectorVal}, informers.NewSharedInformerFactoryWithOptions(c, controller.GetResyncPeriod(ctx), opts...)) } return ctx diff --git a/codegen/cmd/injection-gen/generators/fake_filtered_factory.go b/codegen/cmd/injection-gen/generators/fake_filtered_factory.go index c5a9f97286..1d099f2daf 100644 --- a/codegen/cmd/injection-gen/generators/fake_filtered_factory.go +++ b/codegen/cmd/injection-gen/generators/fake_filtered_factory.go @@ -116,14 +116,15 @@ func withInformerFactory(ctx {{.contextContext|raw}}) {{.contextContext|raw}} { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []{{.informersSharedInformerOption|raw}}{} if {{.injectionHasNamespace|raw}}(ctx) { opts = append(opts, {{.informersWithNamespace|raw}}({{.injectionGetNamespace|raw}}(ctx))) } opts = append(opts, {{.informersWithTweakListOptions|raw}}(func(l *{{.metav1ListOptions|raw}}) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, {{.factoryKey|raw}}{Selector: selector}, + ctx = context.WithValue(ctx, {{.factoryKey|raw}}{Selector: selectorVal}, {{.informersNewSharedInformerFactoryWithOptions|raw}}(c, {{.controllerGetResyncPeriod|raw}}(ctx), opts...)) } return ctx diff --git a/codegen/cmd/injection-gen/generators/filtered_factory.go b/codegen/cmd/injection-gen/generators/filtered_factory.go index f829230622..d26fa16d65 100644 --- a/codegen/cmd/injection-gen/generators/filtered_factory.go +++ b/codegen/cmd/injection-gen/generators/filtered_factory.go @@ -117,14 +117,15 @@ func withInformerFactory(ctx {{.contextContext|raw}}) {{.contextContext|raw}} { } labelSelectors := untyped.([]string) for _, selector := range labelSelectors { + selectorVal := selector opts := []{{.informersSharedInformerOption|raw}}{} if {{.injectionHasNamespace|raw}}(ctx) { opts = append(opts, {{.informersWithNamespace|raw}}({{.injectionGetNamespace|raw}}(ctx))) } opts = append(opts, {{.informersWithTweakListOptions|raw}}(func(l *{{.metav1ListOptions|raw}}) { - l.LabelSelector = selector + l.LabelSelector = selectorVal })) - ctx = context.WithValue(ctx, Key{Selector: selector}, + ctx = context.WithValue(ctx, Key{Selector: selectorVal}, {{.informersNewSharedInformerFactoryWithOptions|raw}}(c, {{.controllerGetResyncPeriod|raw}}(ctx), opts...)) } return ctx