diff --git a/pkg/controlplane/apiserver/config.go b/pkg/controlplane/apiserver/config.go index d3da39d629a..762aa48327f 100644 --- a/pkg/controlplane/apiserver/config.go +++ b/pkg/controlplane/apiserver/config.go @@ -24,6 +24,7 @@ import ( oteltrace "go.opentelemetry.io/otel/trace" + "k8s.io/apimachinery/pkg/api/meta" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/wait" @@ -135,7 +136,13 @@ func BuildGenericConfig( lastErr = fmt.Errorf("failed to create real external clientset: %w", err) return } - versionedInformers = clientgoinformers.NewSharedInformerFactory(clientgoExternalClient, 10*time.Minute) + trim := func(obj interface{}) (interface{}, error) { + if accessor, err := meta.Accessor(obj); err == nil && accessor.GetManagedFields() != nil { + accessor.SetManagedFields(nil) + } + return obj, nil + } + versionedInformers = clientgoinformers.NewSharedInformerFactoryWithOptions(clientgoExternalClient, 10*time.Minute, clientgoinformers.WithTransform(trim)) if lastErr = s.Features.ApplyTo(genericConfig, clientgoExternalClient, versionedInformers); lastErr != nil { return