我正在嘗試獲取/列印當前kubernetes背景關系的名稱,因為它是在~/.kube/config使用中配置的client-go
我已經設法驗證并獲取*rest.Config物件
config, err = clientcmd.NewNonInteractiveDeferredLoadingClientConfig(
&clientcmd.ClientConfigLoadingRules{ExplicitPath: pathToKubeConfig},
&clientcmd.ConfigOverrides{
CurrentContext: "",
}).ClientConfig()
但我在config結構中看不到任何相關欄位。
請注意,盡管我在回傳的物件中傳遞了一個空字串 ( ""),但它為我提供了一個基于我當前背景關系的。ConfigOverridesconfigkubernetes.Clientsetkubectl
uj5u.com熱心網友回復:
該函式ClientConfig()回傳 Kubernetes API 客戶端配置,因此它沒有關于您的組態檔的資訊。
要獲取當前背景關系,您需要呼叫RawConfig(),然后有一個名為 的欄位CurrentContext。
以下代碼應該可以作業。
config, err := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(
&clientcmd.ClientConfigLoadingRules{ExplicitPath: pathToKubeConfig},
&clientcmd.ConfigOverrides{
CurrentContext: "",
}).RawConfig()
currentContext := config.CurrentContext
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/423084.html
標籤:
上一篇:golang中for回圈的性能
