[英]How to list Pods based on Labels in kubernetes go-client
我試圖根據標簽列出 pod
// Kubernetes client - package kubernetes
clientset := kubernetes.NewForConfigOrDie(config)
// create a temp list for storage
var podslice []string
// Get pods -- package metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
pods, _ := clientset.CoreV1().Pods("").List(metav1.ListOptions{})
for _, p := range pods.Items {
fmt.Println(p.GetName())
}
這相當於
kubectl get po
有沒有辦法進入golang
kubectl get po -l app=foo
提前致謝
您可能只能使用ListOptions
參數進行設置。
未經測試的代碼:
import "k8s.io/apimachinery/pkg/labels"
labelSelector := metav1.LabelSelector{MatchLabels: map[string]string{"app": "foo}}
listOptions := metav1.ListOptions{
LabelSelector: labels.Set(labelSelector.MatchLabels).String(),
}
pods, _ := clientset.CoreV1().Pods("").List(listOptions)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.