From 975f1c978d616f5cbcc01d6568c3496f341849f4 Mon Sep 17 00:00:00 2001 From: SataQiu Date: Fri, 28 Jun 2024 18:01:19 +0800 Subject: [PATCH 1/2] kubeadm: fix a bug where the path of the manifest can not be specified when 'upgrade diff' specified a config file --- cmd/kubeadm/app/apis/kubeadm/validation/validation.go | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/kubeadm/app/apis/kubeadm/validation/validation.go b/cmd/kubeadm/app/apis/kubeadm/validation/validation.go index fb92ea1aea1..b40275107f0 100644 --- a/cmd/kubeadm/app/apis/kubeadm/validation/validation.go +++ b/cmd/kubeadm/app/apis/kubeadm/validation/validation.go @@ -609,6 +609,7 @@ func isAllowedFlag(flagName string) bool { kubeadmcmdoptions.NodeName, kubeadmcmdoptions.KubeconfigDir, kubeadmcmdoptions.UploadCerts, + "api-server-manifest", "controller-manager-manifest", "scheduler-manifest", // TODO: remove this line when these flags are deprecated and dropped from "kubeadm upgrade diff" "print-join-command", "rootfs", "v", "log-file", "yes") if allowedFlags.Has(flagName) { return true From 7c2384d3742b4bf8ea9a1e9019266f75aa8473e3 Mon Sep 17 00:00:00 2001 From: SataQiu Date: Fri, 28 Jun 2024 18:51:02 +0800 Subject: [PATCH 2/2] kubeadm: mark '--api-server-manifest', '--controller-manager-manifest' and '--scheduler-manifest' as deprecated flags --- cmd/kubeadm/app/cmd/upgrade/diff.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/cmd/kubeadm/app/cmd/upgrade/diff.go b/cmd/kubeadm/app/cmd/upgrade/diff.go index bd5a1f52983..5f5c42d93c3 100644 --- a/cmd/kubeadm/app/cmd/upgrade/diff.go +++ b/cmd/kubeadm/app/cmd/upgrade/diff.go @@ -89,8 +89,11 @@ func newCmdDiff(out io.Writer) *cobra.Command { options.AddKubeConfigFlag(cmd.Flags(), &flags.kubeConfigPath) options.AddConfigFlag(cmd.Flags(), &flags.cfgPath) cmd.Flags().StringVar(&flags.apiServerManifestPath, "api-server-manifest", defaultAPIServerManifestPath, "path to API server manifest") + cmd.Flags().MarkDeprecated("api-server-manifest", "This flag is deprecated and will be removed in a future release.") cmd.Flags().StringVar(&flags.controllerManagerManifestPath, "controller-manager-manifest", defaultControllerManagerManifestPath, "path to controller manifest") + cmd.Flags().MarkDeprecated("controller-manager-manifest", "This flag is deprecated and will be removed in a future release.") cmd.Flags().StringVar(&flags.schedulerManifestPath, "scheduler-manifest", defaultSchedulerManifestPath, "path to scheduler manifest") + cmd.Flags().MarkDeprecated("scheduler-manifest", "This flag is deprecated and will be removed in a future release.") cmd.Flags().IntVarP(&flags.contextLines, "context-lines", "c", 3, "How many lines of context in the diff") return cmd