From 0f698d08d30941d87fc3001ab36b798e74055c9f Mon Sep 17 00:00:00 2001 From: Austin Pond Date: Wed, 3 Dec 2025 11:05:00 -0500 Subject: [PATCH] appinstaller: Use grafana-app-sdk `apiserver.KubernetesGenericAPIServer` to wrap the generic API server (#114654) [App Platform] Use the app-sdk's apiserver.KubernetesGenericAPIServer in the serverWrapper to ensure that any extra logic for handling WebServices is used. --- pkg/services/apiserver/appinstaller/installer.go | 2 +- pkg/services/apiserver/appinstaller/server.go | 9 +++------ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/pkg/services/apiserver/appinstaller/installer.go b/pkg/services/apiserver/appinstaller/installer.go index 6397262d614..b6e9145ff15 100644 --- a/pkg/services/apiserver/appinstaller/installer.go +++ b/pkg/services/apiserver/appinstaller/installer.go @@ -147,7 +147,7 @@ func InstallAPIs( logger.Debug("Installing APIs for app installer", "app", installer.ManifestData().AppName) wrapper := &serverWrapper{ ctx: ctx, - GenericAPIServer: server, + GenericAPIServer: appsdkapiserver.NewKubernetesGenericAPIServer(server), installer: installer, storageOpts: storageOpts, restOptionsGetter: restOpsGetter, diff --git a/pkg/services/apiserver/appinstaller/server.go b/pkg/services/apiserver/appinstaller/server.go index ab688a46fb9..1967fee9712 100644 --- a/pkg/services/apiserver/appinstaller/server.go +++ b/pkg/services/apiserver/appinstaller/server.go @@ -26,8 +26,8 @@ import ( var _ appsdkapiserver.GenericAPIServer = (*serverWrapper)(nil) type serverWrapper struct { - ctx context.Context - *genericapiserver.GenericAPIServer + ctx context.Context + GenericAPIServer appsdkapiserver.GenericAPIServer installer appsdkapiserver.AppInstaller restOptionsGetter generic.RESTOptionsGetter storageOpts *grafanaapiserveroptions.StorageOptions @@ -143,8 +143,5 @@ func (s *serverWrapper) configureStorage(gr schema.GroupResource, dualWriteSuppo } func (s *serverWrapper) RegisteredWebServices() []*restful.WebService { - if s.Handler != nil && s.Handler.GoRestfulContainer != nil { - return s.Handler.GoRestfulContainer.RegisteredWebServices() - } - return nil + return s.GenericAPIServer.RegisteredWebServices() }