Use FindExistingKubeConfig in the phases which use the --kubeconfig
Signed-off-by: Xianglin Gao <xianglin.gxl@alibaba-inc.com>
This commit is contained in:
		@@ -66,7 +66,6 @@ go_library(
 | 
				
			|||||||
        "//staging/src/k8s.io/client-go/kubernetes:go_default_library",
 | 
					        "//staging/src/k8s.io/client-go/kubernetes:go_default_library",
 | 
				
			||||||
        "//staging/src/k8s.io/client-go/tools/bootstrap/token/api:go_default_library",
 | 
					        "//staging/src/k8s.io/client-go/tools/bootstrap/token/api:go_default_library",
 | 
				
			||||||
        "//staging/src/k8s.io/client-go/tools/bootstrap/token/util:go_default_library",
 | 
					        "//staging/src/k8s.io/client-go/tools/bootstrap/token/util:go_default_library",
 | 
				
			||||||
        "//staging/src/k8s.io/client-go/tools/clientcmd:go_default_library",
 | 
					 | 
				
			||||||
        "//staging/src/k8s.io/client-go/tools/clientcmd/api:go_default_library",
 | 
					        "//staging/src/k8s.io/client-go/tools/clientcmd/api:go_default_library",
 | 
				
			||||||
        "//staging/src/k8s.io/client-go/util/cert:go_default_library",
 | 
					        "//staging/src/k8s.io/client-go/util/cert:go_default_library",
 | 
				
			||||||
        "//vendor/github.com/ghodss/yaml:go_default_library",
 | 
					        "//vendor/github.com/ghodss/yaml:go_default_library",
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -31,7 +31,7 @@ import (
 | 
				
			|||||||
	"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/validation"
 | 
						"k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/validation"
 | 
				
			||||||
	"k8s.io/kubernetes/cmd/kubeadm/app/cmd/options"
 | 
						"k8s.io/kubernetes/cmd/kubeadm/app/cmd/options"
 | 
				
			||||||
	cmdutil "k8s.io/kubernetes/cmd/kubeadm/app/cmd/util"
 | 
						cmdutil "k8s.io/kubernetes/cmd/kubeadm/app/cmd/util"
 | 
				
			||||||
	kubeadmconstants"k8s.io/kubernetes/cmd/kubeadm/app/constants"
 | 
						kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
 | 
				
			||||||
	"k8s.io/kubernetes/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo"
 | 
						"k8s.io/kubernetes/cmd/kubeadm/app/phases/bootstraptoken/clusterinfo"
 | 
				
			||||||
	"k8s.io/kubernetes/cmd/kubeadm/app/phases/bootstraptoken/node"
 | 
						"k8s.io/kubernetes/cmd/kubeadm/app/phases/bootstraptoken/node"
 | 
				
			||||||
	kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
 | 
						kubeadmutil "k8s.io/kubernetes/cmd/kubeadm/app/util"
 | 
				
			||||||
@@ -99,6 +99,7 @@ func NewCmdBootstrapToken() *cobra.Command {
 | 
				
			|||||||
	options.AddKubeConfigFlag(cmd.PersistentFlags(), &kubeConfigFile)
 | 
						options.AddKubeConfigFlag(cmd.PersistentFlags(), &kubeConfigFile)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	// Add subcommands
 | 
						// Add subcommands
 | 
				
			||||||
 | 
						kubeConfigFile = cmdutil.FindExistingKubeConfig(kubeConfigFile)
 | 
				
			||||||
	cmd.AddCommand(NewSubCmdBootstrapTokenAll(&kubeConfigFile))
 | 
						cmd.AddCommand(NewSubCmdBootstrapTokenAll(&kubeConfigFile))
 | 
				
			||||||
	cmd.AddCommand(NewSubCmdBootstrapToken(&kubeConfigFile))
 | 
						cmd.AddCommand(NewSubCmdBootstrapToken(&kubeConfigFile))
 | 
				
			||||||
	cmd.AddCommand(NewSubCmdClusterInfo(&kubeConfigFile))
 | 
						cmd.AddCommand(NewSubCmdClusterInfo(&kubeConfigFile))
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -208,6 +208,7 @@ func NewCmdKubeletConfigUpload() *cobra.Command {
 | 
				
			|||||||
			internalcfg, err := configutil.ConfigFileAndDefaultsToInternalConfig(cfgPath, cfg)
 | 
								internalcfg, err := configutil.ConfigFileAndDefaultsToInternalConfig(cfgPath, cfg)
 | 
				
			||||||
			kubeadmutil.CheckErr(err)
 | 
								kubeadmutil.CheckErr(err)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								kubeConfigFile = cmdutil.FindExistingKubeConfig(kubeConfigFile)
 | 
				
			||||||
			client, err := kubeconfigutil.ClientSetFromFile(kubeConfigFile)
 | 
								client, err := kubeconfigutil.ClientSetFromFile(kubeConfigFile)
 | 
				
			||||||
			kubeadmutil.CheckErr(err)
 | 
								kubeadmutil.CheckErr(err)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@@ -310,6 +311,7 @@ func NewCmdKubeletConfigEnableDynamic() *cobra.Command {
 | 
				
			|||||||
			kubeletVersion, err := version.ParseSemantic(kubeletVersionStr)
 | 
								kubeletVersion, err := version.ParseSemantic(kubeletVersionStr)
 | 
				
			||||||
			kubeadmutil.CheckErr(err)
 | 
								kubeadmutil.CheckErr(err)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
								kubeConfigFile = cmdutil.FindExistingKubeConfig(kubeConfigFile)
 | 
				
			||||||
			client, err := kubeconfigutil.ClientSetFromFile(kubeConfigFile)
 | 
								client, err := kubeconfigutil.ClientSetFromFile(kubeConfigFile)
 | 
				
			||||||
			kubeadmutil.CheckErr(err)
 | 
								kubeadmutil.CheckErr(err)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,7 +18,6 @@ package upgrade
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"io"
 | 
						"io"
 | 
				
			||||||
	"path/filepath"
 | 
					 | 
				
			||||||
	"strings"
 | 
						"strings"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"github.com/spf13/cobra"
 | 
						"github.com/spf13/cobra"
 | 
				
			||||||
@@ -47,7 +46,7 @@ type applyPlanFlags struct {
 | 
				
			|||||||
// NewCmdUpgrade returns the cobra command for `kubeadm upgrade`
 | 
					// NewCmdUpgrade returns the cobra command for `kubeadm upgrade`
 | 
				
			||||||
func NewCmdUpgrade(out io.Writer) *cobra.Command {
 | 
					func NewCmdUpgrade(out io.Writer) *cobra.Command {
 | 
				
			||||||
	flags := &applyPlanFlags{
 | 
						flags := &applyPlanFlags{
 | 
				
			||||||
		kubeConfigPath:            filepath.Join(kubeadmconstants.KubernetesDir, kubeadmconstants.AdminKubeConfigFileName),
 | 
							kubeConfigPath:            kubeadmconstants.GetAdminKubeConfigPath(),
 | 
				
			||||||
		cfgPath:                   "",
 | 
							cfgPath:                   "",
 | 
				
			||||||
		featureGatesString:        "",
 | 
							featureGatesString:        "",
 | 
				
			||||||
		allowExperimentalUpgrades: false,
 | 
							allowExperimentalUpgrades: false,
 | 
				
			||||||
@@ -63,6 +62,7 @@ func NewCmdUpgrade(out io.Writer) *cobra.Command {
 | 
				
			|||||||
		RunE:  cmdutil.SubCmdRunE("upgrade"),
 | 
							RunE:  cmdutil.SubCmdRunE("upgrade"),
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
						flags.kubeConfigPath = cmdutil.FindExistingKubeConfig(flags.kubeConfigPath)
 | 
				
			||||||
	cmd.AddCommand(NewCmdApply(flags))
 | 
						cmd.AddCommand(NewCmdApply(flags))
 | 
				
			||||||
	cmd.AddCommand(NewCmdPlan(flags))
 | 
						cmd.AddCommand(NewCmdPlan(flags))
 | 
				
			||||||
	cmd.AddCommand(NewCmdDiff(out))
 | 
						cmd.AddCommand(NewCmdDiff(out))
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -18,9 +18,9 @@ package util
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
import (
 | 
					import (
 | 
				
			||||||
	"fmt"
 | 
						"fmt"
 | 
				
			||||||
	"path/filepath"
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"github.com/spf13/cobra"
 | 
						"github.com/spf13/cobra"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	"k8s.io/client-go/tools/clientcmd"
 | 
						"k8s.io/client-go/tools/clientcmd"
 | 
				
			||||||
	kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
 | 
						kubeadmconstants "k8s.io/kubernetes/cmd/kubeadm/app/constants"
 | 
				
			||||||
)
 | 
					)
 | 
				
			||||||
@@ -65,12 +65,12 @@ func ValidateExactArgNumber(args []string, supportedArgs []string) error {
 | 
				
			|||||||
func FindExistingKubeConfig(file string) string {
 | 
					func FindExistingKubeConfig(file string) string {
 | 
				
			||||||
	// The user did provide a --kubeconfig flag. Respect that and threat it as an
 | 
						// The user did provide a --kubeconfig flag. Respect that and threat it as an
 | 
				
			||||||
	// explicit path without building a DefaultClientConfigLoadingRules object.
 | 
						// explicit path without building a DefaultClientConfigLoadingRules object.
 | 
				
			||||||
	if file != filepath.Join(kubeadmconstants.KubernetesDir, kubeadmconstants.AdminKubeConfigFileName) {
 | 
						if file != kubeadmconstants.GetAdminKubeConfigPath() {
 | 
				
			||||||
		return file
 | 
							return file
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	// The user did not provide a --kubeconfig flag. Find a config in the standard
 | 
						// The user did not provide a --kubeconfig flag. Find a config in the standard
 | 
				
			||||||
	// locations using DefaultClientConfigLoadingRules, but also consider the default config path.
 | 
						// locations using DefaultClientConfigLoadingRules, but also consider the default config path.
 | 
				
			||||||
	rules := clientcmd.NewDefaultClientConfigLoadingRules()
 | 
						rules := clientcmd.NewDefaultClientConfigLoadingRules()
 | 
				
			||||||
	rules.Precedence = append(rules.Precedence, filepath.Join(kubeadmconstants.KubernetesDir, kubeadmconstants.AdminKubeConfigFileName))
 | 
						rules.Precedence = append(rules.Precedence, kubeadmconstants.GetAdminKubeConfigPath())
 | 
				
			||||||
	return rules.GetDefaultFilename()
 | 
						return rules.GetDefaultFilename()
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user