Fixing view link for management crds

This commit is contained in:
Michael Bolot 2022-12-06 09:04:31 -06:00
parent a10fe811f5
commit b70a8d0548

View File

@ -30,21 +30,32 @@ func DefaultTemplate(clientGetter proxy.ClientGetter,
func selfLink(gvr schema2.GroupVersionResource, meta metav1.Object) (prefix string) {
buf := &strings.Builder{}
if gvr.Group == "" {
buf.WriteString("/api/v1/")
} else {
buf.WriteString("/apis/")
if gvr.Group == "management.cattle.io" && gvr.Version == "v3" {
buf.WriteString("/v1/")
buf.WriteString(gvr.Group)
buf.WriteString("/")
buf.WriteString(gvr.Version)
buf.WriteString("/")
buf.WriteString(".")
buf.WriteString(gvr.Resource)
if meta.GetNamespace() != "" {
buf.WriteString("/")
buf.WriteString(meta.GetNamespace())
}
} else {
if gvr.Group == "" {
buf.WriteString("/api/v1/")
} else {
buf.WriteString("/apis/")
buf.WriteString(gvr.Group)
buf.WriteString("/")
buf.WriteString(gvr.Version)
buf.WriteString("/")
}
if meta.GetNamespace() != "" {
buf.WriteString("namespaces/")
buf.WriteString(meta.GetNamespace())
buf.WriteString("/")
}
buf.WriteString(gvr.Resource)
}
if meta.GetNamespace() != "" {
buf.WriteString("namespaces/")
buf.WriteString(meta.GetNamespace())
buf.WriteString("/")
}
buf.WriteString(gvr.Resource)
buf.WriteString("/")
buf.WriteString(meta.GetName())
return buf.String()