chore(deps): update dependency grafana/grafana-operator to v5.22.0 (#4201)
This PR contains the following updates:
| Package | Update | Change |
|---|---|---|
| [grafana/grafana-operator](https://github.com/grafana/grafana-operator) | minor | `v5.21.4` → `v5.22.0` |
---
### Release Notes
<details>
<summary>grafana/grafana-operator (grafana/grafana-operator)</summary>
### [`v5.22.0`](https://github.com/grafana/grafana-operator/releases/tag/v5.22.0)
[Compare Source](https://github.com/grafana/grafana-operator/compare/v5.21.4...v5.22.0)
<!-- Release notes generated using configuration in .github/release.yml at master -->
We're happy to announce version 5.22.0 of the Grafana Operator!
This release contains a bunch of new and exciting features like:
- The brand new [`GrafanaManifest`](https://grafana.github.io/grafana-operator/docs/examples/manifests/) resource
- This allows you to manage resources previously not supported by the operator but available through the new Kuberentes-style Grafana APIs (e.g Playlists, ShortURLs) as well as resources introduced by plugins (e.g. Frontend O11y configuration in Grafana Cloud).
- Dynamic resource patching (currently only available to `GrafanaManifest` resources)
- Patch resources with arbitrary `jq` scripts before submitting them to the Grafana API!
- Alert rule groups have been updated to support more fields exposed by the Grafana API
- Service accounts no longer require a name and will default to `metadata.name`
#### Upgrade instructions
##### Using Helm
```sh
# Upgrade the operator image & deployment
helm upgrade -i grafana-operator oci://ghcr.io/grafana/helm-charts/grafana-operator --version 5.22.0
# Upgrading CRDs
kubectl apply --server-side --force-conflicts -f https://github.com/grafana/grafana-operator/releases/download/v5.22.0/crds.yaml
```
##### Using kubectl
```sh
# Namespace Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.22.0/kustomize-namespace_scoped.yaml
# Cluster Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.22.0/kustomize-cluster_scoped.yaml
```
##### Using kustomize
```sh
flux pull artifact oci://ghcr.io/grafana/kustomize/grafana-operator:v5.22.0 --output ./grafana-operator/
```
##### Using OLM
Releases are published to [operatorhub.io](https://operatorhub.io/operator/grafana-operator) as well as the OpenShift Operator Catalog. Depending on the installation, existing installations will either upgrade automatically or require approval from an administrator.
#### What's Changed
##### Changes that might need your attention
- chore(Helm): simplify helm chart by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2463](https://github.com/grafana/grafana-operator/pull/2463)
- We changed the default fallback for the cache strategy to `safe` instead of `off`. If you haven't explicitly set `enforceCacheLabels` to null, this does not affect you.
##### Features
- feat(controllers): add new GrafanaManifest resource by [@​theSuess](https://github.com/theSuess) in [#​2448](https://github.com/grafana/grafana-operator/pull/2448)
- feat(GrafanaAlertRuleGroup): add support for targetDatasourceUid in recording rules by [@​RobertClarke64](https://github.com/RobertClarke64) in [#​2478](https://github.com/grafana/grafana-operator/pull/2478)
- feat(GrafanaAlertRuleGroup): add support for `active_time_intervals` in `notificationSettings` by [@​heliapb](https://github.com/heliapb) in [#​2479](https://github.com/grafana/grafana-operator/pull/2479)
- feat(GrafanaManifest): add support for dynamic resource patching by [@​theSuess](https://github.com/theSuess) in [#​2470](https://github.com/grafana/grafana-operator/pull/2470)
- feat(GrafanaServiceAccount): Make `.spec.name` optional by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2524](https://github.com/grafana/grafana-operator/pull/2524)
##### Fixes
- fix(GrafanaDashboard): update Grafana status even when remote state matches by [@​weisdd](https://github.com/weisdd) in [#​2440](https://github.com/grafana/grafana-operator/pull/2440)
- fix(AlertRuleGroup): skip reconciliation when there's no drift in remote state by [@​heliapb](https://github.com/heliapb) in [#​2439](https://github.com/grafana/grafana-operator/pull/2439)
- fix(GrafanaAlertRuleGroup): allow deprecated fields `dashboardUid` and `panelId` by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2450](https://github.com/grafana/grafana-operator/pull/2450)
- fix(logs): Leader election log format by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2466](https://github.com/grafana/grafana-operator/pull/2466)
- fix: add CRD validation for URLs in external grafana, dashboards, and library panels by [@​heliapb](https://github.com/heliapb) in [#​2446](https://github.com/grafana/grafana-operator/pull/2446)
- fix(GrafanaManifest): consider forbidden error as success when deleting manifests by [@​theSuess](https://github.com/theSuess) in [#​2468](https://github.com/grafana/grafana-operator/pull/2468)
- fix(helm): missing list namespaces permission with `watchNamespaceSelector` by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2465](https://github.com/grafana/grafana-operator/pull/2465)
- fix(Grafana): missing HTTPRoute backendRefs (alternative solution) by [@​weisdd](https://github.com/weisdd) in [#​2510](https://github.com/grafana/grafana-operator/pull/2510)
- fix(GrafanaContactPoint): use list based matching as a workaround for 10.4.0-10.4.5 by [@​theSuess](https://github.com/theSuess) in [#​2507](https://github.com/grafana/grafana-operator/pull/2507)
##### Dependencies
- chore(deps): update dependency ko-build/ko to v0.18.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2422](https://github.com/grafana/grafana-operator/pull/2422)
- chore(deps): update dependency kubernetes-sigs/controller-tools to v1.35.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2425](https://github.com/grafana/grafana-operator/pull/2425)
- chore(deps): update dependency kubernetes-sigs/controller-tools to v0.20.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2424](https://github.com/grafana/grafana-operator/pull/2424)
- chore(deps): update docker.io/grafana/grafana docker tag to v12.3.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2423](https://github.com/grafana/grafana-operator/pull/2423)
- fix(deps): update kubernetes packages to v0.35.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2427](https://github.com/grafana/grafana-operator/pull/2427)
- fix(deps): update module github.com/onsi/ginkgo/v2 to v2.27.4 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2434](https://github.com/grafana/grafana-operator/pull/2434)
- fix(deps): update module github.com/onsi/ginkgo/v2 to v2.27.5 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2441](https://github.com/grafana/grafana-operator/pull/2441)
- fix(deps): update module github.com/grafana/grafana-plugin-sdk-go to v0.285.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2444](https://github.com/grafana/grafana-operator/pull/2444)
- chore: bump go to 1.25.6 by [@​weisdd](https://github.com/weisdd) in [#​2445](https://github.com/grafana/grafana-operator/pull/2445)
- chore(deps): update dependency kubernetes-sigs/controller-runtime to v0.22.5 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2454](https://github.com/grafana/grafana-operator/pull/2454)
- fix(deps): update module sigs.k8s.io/controller-runtime to v0.22.5 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2455](https://github.com/grafana/grafana-operator/pull/2455)
- chore(deps): update dependency kubernetes-sigs/controller-runtime to v0.23.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2458](https://github.com/grafana/grafana-operator/pull/2458)
- fix(deps): update module sigs.k8s.io/controller-runtime to v0.23.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2459](https://github.com/grafana/grafana-operator/pull/2459)
- fix(deps): update module github.com/grafana/grafana-plugin-sdk-go to v0.286.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2462](https://github.com/grafana/grafana-operator/pull/2462)
- chore(deps): update dependency kubernetes-sigs/controller-runtime to v0.23.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2471](https://github.com/grafana/grafana-operator/pull/2471)
- fix(deps): update module sigs.k8s.io/controller-runtime to v0.23.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2472](https://github.com/grafana/grafana-operator/pull/2472)
- chore(deps): update docker.io/grafana/grafana docker tag to v12.3.2 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2475](https://github.com/grafana/grafana-operator/pull/2475)
- fix(deps): update module github.com/onsi/ginkgo/v2 to v2.28.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2477](https://github.com/grafana/grafana-operator/pull/2477)
- fix(deps): update module github.com/grafana/grafana-plugin-sdk-go to v0.287.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2487](https://github.com/grafana/grafana-operator/pull/2487)
- fix(deps): update module github.com/alecthomas/kong to v1.14.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2488](https://github.com/grafana/grafana-operator/pull/2488)
- fix(deps): update module k8s.io/apimachinery to v0.35.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2492](https://github.com/grafana/grafana-operator/pull/2492)
- chore(deps): update dependency kubernetes-sigs/kustomize to v5.8.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2496](https://github.com/grafana/grafana-operator/pull/2496)
- fix(deps): update kubernetes packages to v0.35.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2498](https://github.com/grafana/grafana-operator/pull/2498)
- fix(deps): update module k8s.io/apiextensions-apiserver to v0.35.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2499](https://github.com/grafana/grafana-operator/pull/2499)
- fix(deps): update module github.com/grafana/grafana-plugin-sdk-go to v0.288.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2500](https://github.com/grafana/grafana-operator/pull/2500)
- chore(deps): update docker.io/grafana/grafana docker tag to v12.3.3 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2502](https://github.com/grafana/grafana-operator/pull/2502)
- fix(deps): update module github.com/grafana/grafana-plugin-sdk-go to v0.288.0 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2505](https://github.com/grafana/grafana-operator/pull/2505)
- chore(deps): update dependency kubernetes-sigs/controller-tools to v0.20.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2509](https://github.com/grafana/grafana-operator/pull/2509)
- chore(deps): update grafana/shared-workflows/get-vault-secrets action to v1.3.1 by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2526](https://github.com/grafana/grafana-operator/pull/2526)
- chore(deps): lock file maintenance by [@​renovate-sh-app](https://github.com/renovate-sh-app)\[bot] in [#​2503](https://github.com/grafana/grafana-operator/pull/2503)
##### Documentation
- fix(docs): prefix absolute links in docs by [@​theSuess](https://github.com/theSuess) in [#​2421](https://github.com/grafana/grafana-operator/pull/2421)
- fix(docs): git URLs by [@​weisdd](https://github.com/weisdd) in [#​2430](https://github.com/grafana/grafana-operator/pull/2430)
- proposal: `GrafanaManifest` resource by [@​theSuess](https://github.com/theSuess) in [#​2431](https://github.com/grafana/grafana-operator/pull/2431)
- docs(quickstart): Undisturbed editing with `suspend=true` and link to Common Options by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2451](https://github.com/grafana/grafana-operator/pull/2451)
- proposal: dynamic patching proposal by [@​theSuess](https://github.com/theSuess) in [#​2436](https://github.com/grafana/grafana-operator/pull/2436)
- chore(CRDs): `GrafanaManifest` missing and removal of `GrafanaManifestTemplates` by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2473](https://github.com/grafana/grafana-operator/pull/2473)
- docs: document JaaS example by [@​sebhoss](https://github.com/sebhoss) in [#​2370](https://github.com/grafana/grafana-operator/pull/2370)
- fix(docs): unified\_alerting.enabled type in multiple replicas example by [@​klinch0](https://github.com/klinch0) in [#​2493](https://github.com/grafana/grafana-operator/pull/2493)
- docs: grafana manifest documentation by [@​theSuess](https://github.com/theSuess) in [#​2520](https://github.com/grafana/grafana-operator/pull/2520)
- chore: prep-release 5.22.0 by [@​theSuess](https://github.com/theSuess) in [#​2528](https://github.com/grafana/grafana-operator/pull/2528)
##### Other Changes
- chore(Makefile): switch deploy target to to its own overlay by [@​weisdd](https://github.com/weisdd) in [#​2419](https://github.com/grafana/grafana-operator/pull/2419)
- chore(controllers): move test container creation to tk8s package by [@​weisdd](https://github.com/weisdd) in [#​2443](https://github.com/grafana/grafana-operator/pull/2443)
- chore(controllers): Refactor creation of HTTP Clients by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2449](https://github.com/grafana/grafana-operator/pull/2449)
- chore(controllers): normalize logging by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2382](https://github.com/grafana/grafana-operator/pull/2382)
- chore(helm): reduce the number of RBAC resources by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2464](https://github.com/grafana/grafana-operator/pull/2464)
- chore(RBAC Kustomize/OpenShift): Only allow lease management within the operators current namespace by [@​Baarsgaard](https://github.com/Baarsgaard) in [#​2467](https://github.com/grafana/grafana-operator/pull/2467)
- chore(api, controllers): modernize code using Go 1.26 features by [@​weisdd](https://github.com/weisdd) in [#​2497](https://github.com/grafana/grafana-operator/pull/2497)
- feat(tests): add support for grafana version overrides by [@​weisdd](https://github.com/weisdd) in [#​2490](https://github.com/grafana/grafana-operator/pull/2490)
- chore(controllers): embed gtime to cut build time by [@​weisdd](https://github.com/weisdd) in [#​2514](https://github.com/grafana/grafana-operator/pull/2514)
- refactor: use kyaml instead of simplejson for fieldpath by [@​theSuess](https://github.com/theSuess) in [#​2519](https://github.com/grafana/grafana-operator/pull/2519)
#### New Contributors
- [@​heliapb](https://github.com/heliapb) made their first contribution in [#​2439](https://github.com/grafana/grafana-operator/pull/2439)
- [@​RobertClarke64](https://github.com/RobertClarke64) made their first contribution in [#​2478](https://github.com/grafana/grafana-operator/pull/2478)
- [@​sebhoss](https://github.com/sebhoss) made their first contribution in [#​2370](https://github.com/grafana/grafana-operator/pull/2370)
- [@​klinch0](https://github.com/klinch0) made their first contribution in [#​2493](https://github.com/grafana/grafana-operator/pull/2493)
**Full Changelog**: <https://github.com/grafana/grafana-operator/compare/v5.21.4...v5.22.0>
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about this update again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4yNS43IiwidXBkYXRlZEluVmVyIjoiNDMuMjUuNyIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOlsiaW1hZ2UiXX0=-->
Reviewed-on: #4201
Co-authored-by: Renovate Bot <renovate-bot@alexlebens.net>
Co-committed-by: Renovate Bot <renovate-bot@alexlebens.net>