在Kubernetes中获取入口元数据

huangapple go评论117阅读模式
英文:

Fetch ingress metadata in kubernetes

问题

我有以下的Go代码,用于打印我的Kubernetes部署元数据:

  1. package test
  2. import (
  3. "context"
  4. "fmt"
  5. "os"
  6. "testing"
  7. v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
  8. "k8s.io/client-go/kubernetes"
  9. "k8s.io/client-go/tools/clientcmd"
  10. )
  11. func TestEksStandaloneModule(t *testing.T) {
  12. namespace := fmt.Sprintf("%v-%v", "project", "dit")
  13. kubeconfig := os.Getenv("HOME") + "/KUBECONFIG"
  14. clientCfg, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
  15. if err != nil {
  16. t.Error(err)
  17. }
  18. clientset, err := kubernetes.NewForConfig(clientCfg)
  19. appDeployment, err := clientset.AppsV1().Deployments(namespace).Get(context.TODO(), "deploymentname", v1.GetOptions{})
  20. fmt.Println(appDeployment)
  21. }

有人可以帮我编写一个打印Ingress元数据的函数吗?我对Go不太熟悉。

英文:

I have below go code that print my kubernetes deployment metadata,

  1. package test
  2. import (
  3. "context"
  4. "fmt"
  5. "os"
  6. "testing"
  7. v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
  8. "k8s.io/client-go/kubernetes"
  9. "k8s.io/client-go/tools/clientcmd"
  10. )
  11. func TestEksStandaloneModule(t *testing.T) {
  12. namespace := fmt.Sprintf("%v-%v", "project", "dit")
  13. kubeconfig := os.Getenv("HOME") + "/KUBECONFIG"
  14. clientCfg, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
  15. if err != nil {
  16. t.Error(err)
  17. }
  18. clientset, err := kubernetes.NewForConfig(clientCfg)
  19. appDeployment, err := clientset.AppsV1().Deployments(namespace).Get(context.TODO(), "deploymentname", v1.GetOptions{})
  20. fmt.Println(appDeployment)
  21. }

Can any one please help me get a function that prints ingress metadata?
I am new to go.

答案1

得分: 1

我能够通过以下方式使其工作:

  1. appIngress, err := clientset.NetworkingV1().Ingresses(namespace).Get(context.TODO(), "helloworldspringbootssl-ap145385", v1.GetOptions{})
  2. fmt.Println(appIngress)

请注意,这是一个Go语言的代码片段。

英文:

I was able to make it work by

  1. appIngress, err := clientset.NetworkingV1().Ingresses(namespace).Get(context.TODO(), "helloworldspringbootssl-ap145385", v1.GetOptions{})
  2. fmt.Println(appIngress)

huangapple
  • 本文由 发表于 2022年3月24日 17:19:42
  • 转载请务必保留本文链接:https://go.coder-hub.com/71599802.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定