Skip to content

Commit 754d34a

Browse files
committed
fix restclient creation issue
1 parent 8ce65c7 commit 754d34a

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

controllers/clustercache/cluster_accessor.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@ import (
2727
apierrors "k8s.io/apimachinery/pkg/api/errors"
2828
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2929
"k8s.io/apimachinery/pkg/runtime"
30+
"k8s.io/apimachinery/pkg/runtime/serializer"
3031
"k8s.io/apimachinery/pkg/util/sets"
32+
"k8s.io/client-go/kubernetes/scheme"
3133
"k8s.io/client-go/rest"
3234
ctrl "sigs.k8s.io/controller-runtime"
3335
"sigs.k8s.io/controller-runtime/pkg/cache"
@@ -353,7 +355,10 @@ func (ca *clusterAccessor) HealthCheck(ctx context.Context) (bool, bool) {
353355
_, err := restClient.Get().AbsPath("/").Timeout(ca.config.HealthProbe.Timeout).DoRaw(ctx)
354356
if err == nil {
355357
// Execute health probe with a new restClient (this verifies that a new connection works).
356-
restClient, err = rest.UnversionedRESTClientFor(restConfig)
358+
codec := runtime.NoopEncoder{Decoder: scheme.Codecs.UniversalDecoder()}
359+
restClientConfig := rest.CopyConfig(restConfig)
360+
restClientConfig.NegotiatedSerializer = serializer.NegotiatedSerializerWrapper(runtime.SerializerInfo{Serializer: codec})
361+
restClient, err = rest.UnversionedRESTClientFor(restClientConfig)
357362
if err == nil {
358363
_, err = restClient.Get().AbsPath("/").Timeout(ca.config.HealthProbe.Timeout).DoRaw(ctx)
359364
}

0 commit comments

Comments
 (0)