Skip to content

Commit 3730f26

Browse files
committed
controlplane/apiserver: Trim managedFields off self-requested informers
Signed-off-by: Eric Lin <[email protected]>
1 parent 108fd24 commit 3730f26

File tree

1 file changed

+8
-1
lines changed

1 file changed

+8
-1
lines changed

pkg/controlplane/apiserver/config.go

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ import (
2424

2525
oteltrace "go.opentelemetry.io/otel/trace"
2626

27+
"k8s.io/apimachinery/pkg/api/meta"
2728
"k8s.io/apimachinery/pkg/runtime"
2829
"k8s.io/apimachinery/pkg/util/sets"
2930
"k8s.io/apimachinery/pkg/util/wait"
@@ -135,7 +136,13 @@ func BuildGenericConfig(
135136
lastErr = fmt.Errorf("failed to create real external clientset: %w", err)
136137
return
137138
}
138-
versionedInformers = clientgoinformers.NewSharedInformerFactory(clientgoExternalClient, 10*time.Minute)
139+
trim := func(obj interface{}) (interface{}, error) {
140+
if accessor, err := meta.Accessor(obj); err == nil && accessor.GetManagedFields() != nil {
141+
accessor.SetManagedFields(nil)
142+
}
143+
return obj, nil
144+
}
145+
versionedInformers = clientgoinformers.NewSharedInformerFactoryWithOptions(clientgoExternalClient, 10*time.Minute, clientgoinformers.WithTransform(trim))
139146

140147
if lastErr = s.Features.ApplyTo(genericConfig, clientgoExternalClient, versionedInformers); lastErr != nil {
141148
return

0 commit comments

Comments
 (0)