我在golang中有一些代码,该代码连接到Kubernetes集群并打印Pod列表和configmaps列表。
以下是两个类似的功能:
func (k *kubeEntity) getpods(ns string, cs kubernetes.Clientset) {
pods, err := cs.CoreV1().Pods(ns).List(metav1.ListOptions{})
if err != nil {
panic(err.Error())
}
for i, pod := range pods.Items {
fmt.Println(i, ":", pod.Name, "|", pod.Status.Phase)
}
}
func (k *kubeEntity) getcm(ns string, cs kubernetes.Clientset) {
cms, err := cs.CoreV1().ConfigMaps(ns).List(metav1.ListOptions{})
if err != nil {
panic(err.Error())
}
for i, cm := range cms.Items {
fmt.Println(i, ":", cm.Name)
}
}
我该如何编写一个全局/通用函数来完成这两种情况的任务?
预先感谢
答案 0 :(得分:-1)
目前http://golang.org/doc/faq#generics中没有通用名称。
它应该在go 2.0中出现,您可以在此处的草案版本中看到泛型的反馈:https://github.com/golang/go/wiki/Go2GenericsFeedback