diff --git a/pkg/kubectl/cmd/util/clientcache.go b/pkg/kubectl/cmd/util/clientcache.go index c43fcca264e..926e6540f82 100644 --- a/pkg/kubectl/cmd/util/clientcache.go +++ b/pkg/kubectl/cmd/util/clientcache.go @@ -68,6 +68,11 @@ func (c *ClientCache) ClientConfigForVersion(version string) (*client.Config, er client.SetKubernetesDefaults(&config) c.configs[version] = &config + // `version` does not necessarily equal `config.Version`. However, we know that we call this method again with + // `config.Version`, we should get the the config we've just built. + configCopy := config + c.configs[config.Version] = &configCopy + return &config, nil }