Files
grafana/pkg/services/apiserver/appinstaller/resourceconfig.go
T
2025-08-01 10:02:01 -04:00

33 lines
814 B
Go

package appinstaller
import (
appsdkapiserver "github.com/grafana/grafana-app-sdk/k8s/apiserver"
"k8s.io/apimachinery/pkg/runtime/schema"
serverstorage "k8s.io/apiserver/pkg/server/storage"
)
func NewAPIResourceConfig(installers []appsdkapiserver.AppInstaller) *serverstorage.ResourceConfig {
ret := serverstorage.NewResourceConfig()
enable := []schema.GroupVersion{}
disable := []schema.GroupVersion{}
for _, installer := range installers {
for _, version := range installer.ManifestData().Versions {
gv := schema.GroupVersion{
Group: installer.ManifestData().Group,
Version: version.Name,
}
if version.Served {
enable = append(enable, gv)
} else {
disable = append(disable, gv)
}
}
}
ret.EnableVersions(enable...)
ret.DisableVersions(disable...)
return ret
}