From c36b1c901f8738db799592e1b06504b27b7a8c32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stanislav=20L=C3=A1zni=C4=8Dka?= Date: Thu, 13 Feb 2025 15:30:08 +0100 Subject: [PATCH] KCM: CTB publisher: tolerate NotFound during discovery --- cmd/kube-controller-manager/app/certificates.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/cmd/kube-controller-manager/app/certificates.go b/cmd/kube-controller-manager/app/certificates.go index 696bcec3c3d..5f2a40bc787 100644 --- a/cmd/kube-controller-manager/app/certificates.go +++ b/cmd/kube-controller-manager/app/certificates.go @@ -25,6 +25,7 @@ import ( certificatesv1alpha1 "k8s.io/api/certificates/v1alpha1" certificatesv1beta1 "k8s.io/api/certificates/v1beta1" + "k8s.io/apimachinery/pkg/api/errors" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apiserver/pkg/server/dynamiccertificates" utilfeature "k8s.io/apiserver/pkg/util/feature" @@ -291,6 +292,9 @@ func newKubeAPIServerSignerClusterTrustBundledPublisherController(ctx context.Co func clusterTrustBundlesAvailable(client kubernetes.Interface, schemaVersion schema.GroupVersion) (bool, error) { resList, err := client.Discovery().ServerResourcesForGroupVersion(schemaVersion.String()) + if errors.IsNotFound(err) { + return false, nil + } if resList != nil { // even in case of an error above there might be a partial list for APIs that