Я хочу использовать клиент Kubernetes Go для выполнения различных действий в кластере. Я загружаю свой локальный kubeconfig
, который содержит несколько кластеров и контекстов. Контекст по умолчанию - prod
, и одно из значений конфигурации, которое я хочу переопределить, - CurrentContext
clientConfig := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(
&clientcmd.ClientConfigLoadingRules{ExplicitPath: "/Users/me/.kube/config"},
&clientcmd.ConfigOverrides{
CurrentContext: "stage",
})
rawConfig, _ := clientConfig.RawConfig()
log.Printf(rawConfig.CurrentContext) // outputs "prod" instead of "stage"
Когда я проверяю RawConfig()
, текущий контекст по-прежнему «prod» вместо «stage» , Почему переопределение конфигурации не работает?
Также как переопределение для AuthInfo et c. Работа? Переопределение принимает только один AuthInfo
, тогда как конфигурация содержит карту AuthInfo
et c.
Проблема, связанная с GitHub https://github.com/kubernetes/client-go/issues/735