在Golang中,”kubectl get crds”的等效代码是什么?

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

The equivalent of "kubectl get crds" in golang

问题

如果我想使用client-go列出集群上的命名空间,我可以使用以下简单命令:

clientset.CoreV1().Namespaces().List(context.TODO(), metav1.ListOptions{})

那么kubectl get crd命令的等效命令是什么样的?是否可以实现这个功能?

我尝试找到解决方案,但我找到的大多数答案都是关于如何查询特定的CRD,而不是获取它们的列表。

英文:

If I want to list namespaces on the cluster using client-go I can use a simple command to do this:

clientset.CoreV1().Namespaces().List(context.TODO(), metav1.ListOptions{})

And what would the equivalent of the kubectl get crd command look like?
Is this even possible to do?

I tried to find a solution, but most of the answers I found answered how to query a specific crd, rather than get a list of them.

答案1

得分: 2

ApiextensionsV1beta1 API是apiextensions-apiserver库的一部分,而不是kubernetes库。要访问ApiextensionsV1beta1 API,您需要导入apiextensions-apiserver库,如下所示:

import (
    apiextensionsclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
)
英文:

ApiextensionsV1beta1 API is part of the apiextensions-apiserver library, not the kubernetes library.To access the ApiextensionsV1beta1 API, you will need to import the apiextensions-apiserver library, as follows:

import (
	apiextensionsclientset "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
)

答案2

得分: -1

clientset.ApiextensionsV1beta1().CustomResourceDefinitions().List(context.TODO(), metav1.ListOptions{})

这个 API 返回一个 CustomResourceDefinitions 对象的列表。

英文:
clientset.ApiextensionsV1beta1().CustomResourceDefinitions().List(context.TODO(), metav1.ListOptions{})

This API returns a list of CustomResourceDefinitions objects.

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

发表评论

匿名网友

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

确定