* Require resource.ResourceClient in dashboard.NewAPIService to allow it to pass it through to the DashboardAPIBuilder, ensuring that search can be used to check for duplicated deprecatedInternalID values.
* run make update-workspace
* Upgrade grafana-app-sdk to v0.54.0 and update code and tests to fix breaking changes in resource.ClientGenerator and k8s version upgrade.
* Run public/app/plugins/datasource/grafana-testdata-datasource/schema/v0alpha1.json through jq to format.
* Revert changes to public/app/plugins/datasource/grafana-testdata-datasource/schema/v0alpha1.json as the change seems to be entirely formatting-related.
* Remove getkin/kin-openapi replace directive in apps/plugins/go.mod, and remove yaml replace directives in go.mod as getkin/kin-openapi needs newer versions.
* Regenerate OpenAPI snapshots, which now include new shardSelector query field introduced in k8s 1.36
* Run yarn generate-apis
* Fix linter issues.
* [chore] Upgrade grafana-app-sdk to v0.51.3, set app roles to empty for each app so that manifest codegen is unchanged.
* Fix linter issues in dashboard conversion tests, ignore linter staticcheck in the IAM app to avoid any additional changes.
* [chore] Update go to v1.26.0, and the golangci-lint action to v9.
* Use golangci-lint v2.9.0
* Use golang:1.26.0-alpine instead of 1.25.7-alpine
* chore: more go version upgrades
* chore: more updates
* chore: generate apis
* fix: golint issues prealloc etc
* fix: million tiny golint issues
---------
Co-authored-by: konsalex <konstantinos.alexoglou@grafana.com>
[App Platform] Use the app-sdk's apiserver.KubernetesGenericAPIServer in the serverWrapper to ensure that any extra logic for handling WebServices is used.
Run the app runner in a goroutine in the post-start hook, as the '/readyz' endpoint for the API server waits for a non-nil error response from the post-start hook to mark it as ready.
* [API Server] Add Example App for reference use.
* Remove Printlns.
* Upgrade app-sdk to v0.46.0, update apps to handle breaking changes.
* Only start the reconciler for the example app if the v1alpha1 API version is enabled.
* Some comment doc updates.
* Run make update-workspace
* Set codeowner for /apps/example
* Run make gofmt and make update-workspace
* Run prettier on apps/example/README.md
* Add COPY apps/example to Dockerfile
* Add an authorizer to the example app.
* Fix import ordering.
* Update apps/example/kinds/manifest.cue
Co-authored-by: Owen Diehl <ow.diehl@gmail.com>
* Run make update-workspace
* Re-run make gen-go for enterprise import updates
* Run make update-workspace
---------
Co-authored-by: Owen Diehl <ow.diehl@gmail.com>
* [APIServer] Add the method RegisterAPIInstaller to the APIRegistrar interface, and implement it in the builder. This allows new installer-based apps to register themselves in enterprise.
* Rename RegisterAPIInstaller to RegisterAppInstaller
[apiserver] Fix appinstaller.serverWrapper.RegisteredWebServices() to return the RegisteredWebServices from the underlying apiserver's Handler's GoRestfulContainer, matching the logic in grafana-app-sdk's apiserver.KubernetesGenericAPIServer