diff --git a/pkg/kubectl/cmd/config/config.go b/pkg/kubectl/cmd/config/config.go index d73ea26804e..9c8fd465ba3 100644 --- a/pkg/kubectl/cmd/config/config.go +++ b/pkg/kubectl/cmd/config/config.go @@ -225,6 +225,7 @@ func ModifyConfig(configAccess ConfigAccess, newConfig clientcmdapi.Config, rela configToWrite := getConfigFromFileOrDie(destinationFile) t := *cluster + configToWrite.Clusters[key] = &t configToWrite.Clusters[key].LocationOfOrigin = destinationFile if relativizePaths { @@ -429,6 +430,10 @@ func getConfigFromFileOrDie(filename string) *clientcmdapi.Config { return clientcmdapi.NewConfig() } + if config.Clusters == nil { + config.Clusters = map[string]*clientcmdapi.Cluster{} + } + return config }