From d1d05d3eba7d5627e9d010a5d3cce750ef974c99 Mon Sep 17 00:00:00 2001 From: elmiko Date: Thu, 26 Sep 2024 14:55:16 -0400 Subject: [PATCH] remove IsDeprecatedInternal from cloudprovider.plugins The internal cloud controller loops are disabled at this point, this function should not be used as it does not return accurate information. In its place we check for the presence of the external cloud provider as that is the only acceptable value. --- cmd/kube-controller-manager/app/cloudproviders.go | 2 +- pkg/kubeapiserver/options/cloudprovider.go | 2 +- pkg/kubelet/kubelet.go | 2 +- staging/src/k8s.io/cloud-provider/plugins.go | 12 ------------ 4 files changed, 3 insertions(+), 15 deletions(-) diff --git a/cmd/kube-controller-manager/app/cloudproviders.go b/cmd/kube-controller-manager/app/cloudproviders.go index f93890d24c4..562e478f2d5 100644 --- a/cmd/kube-controller-manager/app/cloudproviders.go +++ b/cmd/kube-controller-manager/app/cloudproviders.go @@ -35,7 +35,7 @@ func createCloudProvider(logger klog.Logger, cloudProvider string, externalCloud var loopMode ControllerLoopMode var err error - if utilfeature.DefaultFeatureGate.Enabled(features.DisableCloudProviders) && cloudprovider.IsDeprecatedInternal(cloudProvider) { + if utilfeature.DefaultFeatureGate.Enabled(features.DisableCloudProviders) && !cloudprovider.IsExternal(cloudProvider) { cloudprovider.DisableWarningForProvider(cloudProvider) return nil, ExternalLoops, fmt.Errorf( "cloud provider %q was specified, but built-in cloud providers are disabled. Please set --cloud-provider=external and migrate to an external cloud provider", diff --git a/pkg/kubeapiserver/options/cloudprovider.go b/pkg/kubeapiserver/options/cloudprovider.go index 6977e8dd16b..716e0651e6b 100644 --- a/pkg/kubeapiserver/options/cloudprovider.go +++ b/pkg/kubeapiserver/options/cloudprovider.go @@ -51,7 +51,7 @@ func (opts *CloudProviderOptions) Validate() []error { errs = append(errs, fmt.Errorf("when using --cloud-provider set to '%s', "+ "please set DisableKubeletCloudCredentialProviders feature to true", opts.CloudProvider)) } - case cloudprovider.IsDeprecatedInternal(opts.CloudProvider): + case !cloudprovider.IsExternal(opts.CloudProvider): if utilfeature.DefaultFeatureGate.Enabled(features.DisableCloudProviders) { errs = append(errs, fmt.Errorf("when using --cloud-provider set to '%s', "+ "please set DisableCloudProviders feature to false", opts.CloudProvider)) diff --git a/pkg/kubelet/kubelet.go b/pkg/kubelet/kubelet.go index df9a401b5c0..516f9d5014d 100644 --- a/pkg/kubelet/kubelet.go +++ b/pkg/kubelet/kubelet.go @@ -386,7 +386,7 @@ func NewMainKubelet(kubeCfg *kubeletconfiginternal.KubeletConfiguration, return nil, fmt.Errorf("invalid sync frequency %d", kubeCfg.SyncFrequency.Duration) } - if utilfeature.DefaultFeatureGate.Enabled(features.DisableCloudProviders) && cloudprovider.IsDeprecatedInternal(cloudProvider) { + if utilfeature.DefaultFeatureGate.Enabled(features.DisableCloudProviders) && !cloudprovider.IsExternal(cloudProvider) { cloudprovider.DisableWarningForProvider(cloudProvider) return nil, fmt.Errorf("cloud provider %q was specified, but built-in cloud providers are disabled. Please set --cloud-provider=external and migrate to an external cloud provider", cloudProvider) } diff --git a/staging/src/k8s.io/cloud-provider/plugins.go b/staging/src/k8s.io/cloud-provider/plugins.go index 458fff69a83..718016a2c87 100644 --- a/staging/src/k8s.io/cloud-provider/plugins.go +++ b/staging/src/k8s.io/cloud-provider/plugins.go @@ -85,18 +85,6 @@ func IsExternal(name string) bool { return name == externalCloudProvider } -// IsDeprecatedInternal is responsible for preventing cloud.Interface -// from being initialized in kubelet, kube-controller-manager or kube-api-server -func IsDeprecatedInternal(name string) bool { - for _, provider := range deprecatedCloudProviders { - if provider.name == name { - return true - } - } - - return false -} - // DisableWarningForProvider logs information about disabled cloud provider state func DisableWarningForProvider(providerName string) { for _, provider := range deprecatedCloudProviders {