Merge pull request #124667 from linxiulei/trim

controlplane/apiserver: Trim managedFields off self-requested informers
This commit is contained in:
Kubernetes Prow Robot 2024-06-26 08:10:20 -07:00 committed by GitHub
commit 44c1a0eec2
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -25,6 +25,7 @@ import (
noopoteltrace "go.opentelemetry.io/otel/trace/noop" noopoteltrace "go.opentelemetry.io/otel/trace/noop"
"k8s.io/apimachinery/pkg/api/meta"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
utilnet "k8s.io/apimachinery/pkg/util/net" utilnet "k8s.io/apimachinery/pkg/util/net"
"k8s.io/apimachinery/pkg/util/sets" "k8s.io/apimachinery/pkg/util/sets"
@ -142,7 +143,13 @@ func BuildGenericConfig(
lastErr = fmt.Errorf("failed to create real external clientset: %w", err) lastErr = fmt.Errorf("failed to create real external clientset: %w", err)
return 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 { if lastErr = s.Features.ApplyTo(genericConfig, clientgoExternalClient, versionedInformers); lastErr != nil {
return return