package tool import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/client-go/kubernetes" "k8s.io/client-go/restmapper" ) // GetGVR 获取GVR func GetGVR(clientSet *kubernetes.Clientset, gvk schema.GroupVersionKind) (schema.GroupVersionResource, error) { gr, err := restmapper.GetAPIGroupResources(clientSet) if err != nil { return schema.GroupVersionResource{}, err } mapper := restmapper.NewDiscoveryRESTMapper(gr) mapping, err := mapper.RESTMapping(gvk.GroupKind(), gvk.Version) if err != nil { return schema.GroupVersionResource{}, err } return mapping.Resource, nil }