mirror of
https://github.com/grafana/grafana.git
synced 2025-02-25 18:55:37 -06:00
K8s: Improve OpenAPI behaviour (#81606)
This commit is contained in:
parent
6fc1a6a54f
commit
2ffd56c23b
@ -7,12 +7,14 @@ import (
|
||||
"strings"
|
||||
"time"
|
||||
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/version"
|
||||
openapinamer "k8s.io/apiserver/pkg/endpoints/openapi"
|
||||
"k8s.io/apiserver/pkg/registry/generic"
|
||||
genericapiserver "k8s.io/apiserver/pkg/server"
|
||||
"k8s.io/apiserver/pkg/util/openapi"
|
||||
"k8s.io/client-go/kubernetes/scheme"
|
||||
"k8s.io/kube-openapi/pkg/common"
|
||||
|
||||
"github.com/grafana/grafana/pkg/setting"
|
||||
)
|
||||
@ -27,6 +29,18 @@ func SetupConfig(serverConfig *genericapiserver.RecommendedConfig, builders []AP
|
||||
openapi.GetOpenAPIDefinitionsWithoutDisabledFeatures(defsGetter),
|
||||
openapinamer.NewDefinitionNamer(Scheme, scheme.Scheme))
|
||||
|
||||
serverConfig.OpenAPIV3Config.GetOperationIDAndTagsFromRoute = func(r common.Route) (string, []string, error) {
|
||||
tags := []string{}
|
||||
prop, ok := r.Metadata()["x-kubernetes-group-version-kind"]
|
||||
if ok {
|
||||
gvk, ok := prop.(metav1.GroupVersionKind)
|
||||
if ok && gvk.Kind != "" {
|
||||
tags = append(tags, gvk.Kind)
|
||||
}
|
||||
}
|
||||
return r.OperationName(), tags, nil
|
||||
}
|
||||
|
||||
// Add the custom routes to service discovery
|
||||
serverConfig.OpenAPIV3Config.PostProcessSpec = getOpenAPIPostProcessor(builders)
|
||||
|
||||
|
@ -98,6 +98,7 @@
|
||||
filter: true,
|
||||
tagsSorter: 'alpha',
|
||||
tryItOutEnabled: true,
|
||||
queryConfigEnabled: true, // keeps the selected ?urls.primaryName=...
|
||||
});
|
||||
|
||||
window.ui = ui;
|
||||
|
Loading…
Reference in New Issue
Block a user