亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何使用 client-go 獲取當前的 k8s 上下文名稱

如何使用 client-go 獲取當前的 k8s 上下文名稱

Go
慕田峪9158850 2022-10-31 15:51:32
我正在嘗試獲取/打印當前kubernetes上下文的名稱,因為它是在~/.kube/config使用中配置的client-go我已經設法驗證并獲取*rest.Config對象    config, err = clientcmd.NewNonInteractiveDeferredLoadingClientConfig(         &clientcmd.ClientConfigLoadingRules{ExplicitPath: pathToKubeConfig},         &clientcmd.ConfigOverrides{             CurrentContext: "",         }).ClientConfig()但我在config結構中看不到任何相關字段。請注意,盡管我在返回的對象中傳遞了一個空字符串 ( ""),但它為我提供了一個基于我當前上下文的。ConfigOverridesconfigkubernetes.Clientsetkubectl
查看完整描述

1 回答

?
元芳怎么了

TA貢獻1798條經驗 獲得超7個贊

該函數ClientConfig()返回 Kubernetes API 客戶端配置,因此它沒有關于您的配置文件的信息。

要獲取當前上下文,您需要調用RawConfig(),然后有一個名為 的字段CurrentContext。

以下代碼應該可以工作。

    config, err := clientcmd.NewNonInteractiveDeferredLoadingClientConfig(
        &clientcmd.ClientConfigLoadingRules{ExplicitPath: pathToKubeConfig},
        &clientcmd.ConfigOverrides{
            CurrentContext: "",
        }).RawConfig()
    currentContext := config.CurrentContext


查看完整回答
反對 回復 2022-10-31
  • 1 回答
  • 0 關注
  • 118 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號