From 93e2868d4e387c17d80c5e2a1af074705621e624 Mon Sep 17 00:00:00 2001 From: Jordan Liggitt Date: Fri, 31 Jul 2020 12:29:31 -0400 Subject: [PATCH] Fix providerless kubelet startup --- cmd/kubelet/app/options/BUILD | 1 + cmd/kubelet/app/options/globalflags.go | 4 +-- .../app/options/globalflags_providerless.go | 27 +++++++++++++++++ .../app/options/globalflags_providers.go | 29 +++++++++++++++++++ 4 files changed, 58 insertions(+), 3 deletions(-) create mode 100644 cmd/kubelet/app/options/globalflags_providerless.go create mode 100644 cmd/kubelet/app/options/globalflags_providers.go diff --git a/cmd/kubelet/app/options/BUILD b/cmd/kubelet/app/options/BUILD index 6962a7f9ee5..7029cec3685 100644 --- a/cmd/kubelet/app/options/BUILD +++ b/cmd/kubelet/app/options/BUILD @@ -13,6 +13,7 @@ go_library( "globalflags.go", "globalflags_linux.go", "globalflags_other.go", + "globalflags_providers.go", "options.go", "osflags_others.go", "osflags_windows.go", diff --git a/cmd/kubelet/app/options/globalflags.go b/cmd/kubelet/app/options/globalflags.go index 455605f4f01..fdc20d18177 100644 --- a/cmd/kubelet/app/options/globalflags.go +++ b/cmd/kubelet/app/options/globalflags.go @@ -84,9 +84,7 @@ func addCredentialProviderFlags(fs *pflag.FlagSet) { global := pflag.CommandLine local := pflag.NewFlagSet(os.Args[0], pflag.ExitOnError) - // TODO(#58034): This is not a static file, so it's not quite as straightforward as --google-json-key. - // We need to figure out how ACR users can dynamically provide pull credentials before we can deprecate this. - pflagRegister(global, local, "azure-container-registry-config") + addLegacyCloudProviderCredentialProviderFlags(global, local) fs.AddFlagSet(local) } diff --git a/cmd/kubelet/app/options/globalflags_providerless.go b/cmd/kubelet/app/options/globalflags_providerless.go new file mode 100644 index 00000000000..7fba07df799 --- /dev/null +++ b/cmd/kubelet/app/options/globalflags_providerless.go @@ -0,0 +1,27 @@ +// +build providerless + +/* +Copyright 2020 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package options + +import ( + "github.com/spf13/pflag" +) + +func addLegacyCloudProviderCredentialProviderFlags(global, local *pflag.FlagSet) { + // no-op when no legacy providers are compiled in +} diff --git a/cmd/kubelet/app/options/globalflags_providers.go b/cmd/kubelet/app/options/globalflags_providers.go new file mode 100644 index 00000000000..5d2dd44d345 --- /dev/null +++ b/cmd/kubelet/app/options/globalflags_providers.go @@ -0,0 +1,29 @@ +// +build !providerless + +/* +Copyright 2020 The Kubernetes Authors. + +Licensed under the Apache License, Version 2.0 (the "License"); +you may not use this file except in compliance with the License. +You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + +Unless required by applicable law or agreed to in writing, software +distributed under the License is distributed on an "AS IS" BASIS, +WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +See the License for the specific language governing permissions and +limitations under the License. +*/ + +package options + +import ( + "github.com/spf13/pflag" +) + +func addLegacyCloudProviderCredentialProviderFlags(global, local *pflag.FlagSet) { + // TODO(#58034): This is not a static file, so it's not quite as straightforward as --google-json-key. + // We need to figure out how ACR users can dynamically provide pull credentials before we can deprecate this. + pflagRegister(global, local, "azure-container-registry-config") +}