如何捕获 oc 命令的输出:oc get endpoints -n default -o yaml kubernetes inside a redhat ocp container

How do I capture the output of oc command : oc get endpoints -n default -o yaml kubernetes inside a redhat ocp container

我尝试使用 clientset.CoreV1().Endpoints(namespace).Get(context.TODO(),name string , metav1.GetOptions{})

endpoints, err2 := clientset.CoreV1().Endpoints(namespace2).Get(context.TODO(), namespace2, metav1.GetOptions{})
    if err2 != nil {
            log.Println(err2.Error())
    }

    fmt.Printf("GetPodList There are %v endpoints in the cluster\n", (endpoints))

但我不确定要为名称字符串(第二个参数)和 metav1.GetOptions{} 提供的参数。 (第三个参数)

您应该使用 List 函数而不是 GetList 允许您检索符合特定条件的多个端点,Get 允许您检索特定端点(按名称)。

因此:

endpoints, err := clientset.CoreV1().Endpoints(namespace2).List(context.TODO(), metav1.ListOptions{})
// ...
fmt.Printf("GetPodList there are %v endpoints in the cluster\n", len(endpoints.Items)

如果你想要一个命名空间中的所有端点,你不需要指定任何列表选项,传递一个空结构就可以了。