Releases: grafana/grafana-operator
v5.21.4
This release contains a few fixes around HTTPRoute CRD discovery, kustomize artifacts, and NotificationPolicy validations.
What's Changed
Breaking changes
- fix(NotificationPolicy): disable invalid fields on
.spec.routeby @Baarsgaard in #2270:- even though, technically, the change is breaking, it may only affect configurations and k8s versions that we do not support:
- essentially, we added CEL-rules prohibiting usage of a few top-level fields inside
.spec.route. Those fields have never had any effect, so should have never been used by anyone in the first place. More details can be found in the related PR; - some of those rules rely on a CEL function that is not available on k8s <= 1.31.x. 1.31 has already reached its EOL, so it should not be an issue either;
- essentially, we added CEL-rules prohibiting usage of a few top-level fields inside
- if any of the changes mentioned above prevent you from upgrading, you may simply skip CRD upgrade this time (e.g. keep using the one from v5.21.3, it differs only around those validations).
- even though, technically, the change is breaking, it may only affect configurations and k8s versions that we do not support:
Fixes
- fix(autodetect): HTTPRoute discovery for partial Gateway API CRD set by @weisdd in #2417:
- previously, the operator would assume that users would have either all Gateway API CRDs installed or none of them. As a consequence, if
HTTPRouteCRD was actually missing, the operator would crash while trying to do cache fine-tuning (part of the start-up process). From now on, the operator will specifically check forHTTPRouteCRD instead;
- previously, the operator would assume that users would have either all Gateway API CRDs installed or none of them. As a consequence, if
- fix(kustomize): remove stale image override from cluster_scoped overlay by @abh in #2413:
- it appears that, starting from
v5.18.0, cluster-scoped kustomize artifacts (kustomize-cluster_scoped.yaml) have contained a stale image override. Those artifacts, based on our pull stats, are not widely used, so the effect was minimal. In any case, we'll adjust our Makefile targets to prevent accidental image overrides.
- it appears that, starting from
New Contributors
Full Changelog: v5.21.3...v5.21.4
v5.21.3
NOTE: This patch release is aimed to fix a bug in the helm chart around setting the default value for image.repository (in earlier v5.21.x versions, it should have been set to grafana/grafana-operator, not to ghcr.io/grafana/grafana-operator, which resulted in ErrImagePull errors).
What's Changed
Fixes
Full Changelog: v5.21.2...v5.21.3
v5.21.2
NOTE: due to a bug in our workflow, image.repository in the helm chart is set to ghcr.io/grafana/grafana-operator (instead of grafana/grafana-operator), which will lead to the ErrImagePull error in Kubernetes. You can either do a manual override or wait for chart 5.21.3.
What's Changed
Fixes
- fix(RBAC): Missing
*/finalizerspatch;update perms for OpenShift by @Baarsgaard in #2391
Full Changelog: v5.21.1...v5.21.2
v5.21.1
NOTE: functionality-wise, v5.21.1 is the same as v5.21.0. - The patch release contains only a fix for our helm publishing workflow. Make sure to use 5.21.1 tag for helm chart.
NOTE: due to a bug in our workflow, image.repository in the helm chart is set to ghcr.io/grafana/grafana-operator (instead of grafana/grafana-operator), which will lead to the ErrImagePull error in Kubernetes. You can either do a manual override or wait for chart 5.21.3.
Welcome to release 5.21.1 of the Grafana Operator!
It mainly includes bug fixes but also some cool new features (like kubernetes-native JWT authentication, HTTPRoute support or more flexible date parsing in alert rule groups).
We also made some changes to the helm chart. One minor change is that we removed the v prefix from our chart versions which should hopefully simplify OCI installations. We also aligned the image.repository value with other Grafana helm charts which might cause issues. More details can be found in the next section.
Breaking changes to the helm chart
If you've been using the image.repository field to change the image, this field has been split into registry and repository to align with the rest of the Grafana helm charts.
To migrate any custom values to this new format, follow this example:
Migration example
If your values.yaml contained this:
image:
repository: example.com/my-custom/grafana-operatoryou'll need to replace it with this:
image:
registry: example.com
repository: my-custom/grafana-operatorvalues.yaml, you can safely ignore this.
Upgrade instructions
Using Helm
# Upgrade the operator image & deployment
helm upgrade -i grafana-operator oci://ghcr.io/grafana/helm-charts/grafana-operator --version 5.21.1
# Upgrading CRDs
kubectl apply --server-side --force-conflicts -f https://github.com/grafana/grafana-operator/releases/download/v5.21.1/crds.yamlUsing kubectl
# Namespace Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.21.1/kustomize-namespace_scoped.yaml
# Cluster Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.21.1/kustomize-cluster_scoped.yaml Using kustomize
flux pull artifact oci://ghcr.io/grafana/kustomize/grafana-operator:v5.21.1 --output ./grafana-operator/Using OLM
Releases are published to operatorhub.io 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
Features
- feat(Grafana): K8s serviceaccount token as authorization
.spec.client.useKubeAuthby @Baarsgaard in #2137 - feat: add active_time_intervals to nfpolicy by @eyazici90 in #2223
- feat(Helm): Adding values for extra volumes and custom probes by @npapapietro in #2251
- feat(Helm): Allow enabling/disabling user namespaces by @Baarsgaard in #2252
- feat(Helm): Allow to define deployment's annotations by @wilfriedroset in #2261
- feat(ContactPoint): Allow multiple receivers in spec by @Baarsgaard in #2249
- feat(ContactPoint): Allow setting editable at creation by @Baarsgaard in #2250
- feat(AlertRuleGroup): Support
dandwinforduration strings by @vignesh-codes in #2269 - feat: HTTP Route Support by @theSuess in #2293
- Align helm values for registry with other grafana charts by @npapapietro in #2324
Fixes
- fix: Allow multiple sharded instances to be hosted in one namespace with leader election by @Baarsgaard in #2265
- fix(Annotations): Panic when applying annotations and map is nil by @Baarsgaard in #2278
- fix(AlertRuleGroup):
.spec.editablecannot be be disabled by @Miguel-Barros96 in #2276 - fix(grafana): track events for all owned resources by @weisdd in #2299
- fix(grafana): delete dangling ingress by @weisdd in #2298
- fix(grafana): delete dangling route by @weisdd in #2301
- fix(controllers): reflect changes in library panels by @weisdd in #2320
- Update weekly sync link by @theSuess in #2344
- fix(Grafana):
CreateContainerConfigErrorwithdisableDefaultAdminSecretand admin secret missing by @Baarsgaard in #2356 - fix(useKubeAuth): Require separate ServiceAccount token without K8s permissions by @Baarsgaard in #2371
- fix(Release): Remove
vprefix from Helm Chart version by @Baarsgaard in #2377 - fix(controllers): reconcile drifted dashboards by @weisdd in #2381
Dependencies
- chore(deps): bump sigstore/cosign-installer from 3.10.0 to 4.0.0 by @dependabot[bot] in #2224
- fix(deps): update github.com/grafana/grafana-openapi-client-go digest to d92957c by @renovate-sh-app[bot] in #2228
- fix(deps): update github.com/openshift/api digest to 8c9acca by @renovate-sh-app[bot] in #2229
- fix(deps): update k8s.io/utils digest to bc988d5 by @renovate-sh-app[bot] in #2230
New Contributors
- @renovate-sh-app[bot] made their first contribution in #2228
- @npapapietro made their first contribution in #2251
- @Miguel-Barros96 made their first contribution in #2276
- @mmmommm made their first contribution in #2297
Full Changelog: v5.20.0...v5.21.0
v5.21.0
Welcome to release 5.21.0 of the Grafana Operator!
It mainly includes bug fixes but also some cool new features (like kubernetes-native JWT authentication, HTTPRoute support or more flexible date parsing in alert rule groups).
We also made some changes to the helm chart. One minor change is that we removed the v prefix from our chart versions which should hopefully simplify OCI installations. We also aligned the image.repository value with other Grafana helm charts which might cause issues. More details can be found in the next section.
Breaking changes to the helm chart
If you've been using the image.repository field to change the image, this field has been split into registry and repository to align with the rest of the Grafana helm charts.
To migrate any custom values to this new format, follow this example:
Migration example
If your values.yaml contained this:
image:
repository: example.com/my-custom/grafana-operatoryou'll need to replace it with this:
image:
registry: example.com
repository: my-custom/grafana-operatorvalues.yaml, you can safely ignore this.
Upgrade instructions
Using Helm
# Upgrade the operator image & deployment
helm upgrade -i grafana-operator oci://ghcr.io/grafana/helm-charts/grafana-operator --version 5.21.0
# Upgrading CRDs
kubectl apply --server-side --force-conflicts -f https://github.com/grafana/grafana-operator/releases/download/v5.21.0/crds.yamlUsing kubectl
# Namespace Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.21.0/kustomize-namespace_scoped.yaml
# Cluster Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.21.0/kustomize-cluster_scoped.yaml Using kustomize
flux pull artifact oci://ghcr.io/grafana/kustomize/grafana-operator:v5.21.0 --output ./grafana-operator/Using OLM
Releases are published to operatorhub.io 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
Features
- feat(Grafana): K8s serviceaccount token as authorization
.spec.client.useKubeAuthby @Baarsgaard in #2137 - feat: add active_time_intervals to nfpolicy by @eyazici90 in #2223
- feat(Helm): Adding values for extra volumes and custom probes by @npapapietro in #2251
- feat(Helm): Allow enabling/disabling user namespaces by @Baarsgaard in #2252
- feat(Helm): Allow to define deployment's annotations by @wilfriedroset in #2261
- feat(ContactPoint): Allow multiple receivers in spec by @Baarsgaard in #2249
- feat(ContactPoint): Allow setting editable at creation by @Baarsgaard in #2250
- feat(AlertRuleGroup): Support
dandwinforduration strings by @vignesh-codes in #2269 - feat: HTTP Route Support by @theSuess in #2293
- Align helm values for registry with other grafana charts by @npapapietro in #2324
Fixes
- fix: Allow multiple sharded instances to be hosted in one namespace with leader election by @Baarsgaard in #2265
- fix(Annotations): Panic when applying annotations and map is nil by @Baarsgaard in #2278
- fix(AlertRuleGroup):
.spec.editablecannot be be disabled by @Miguel-Barros96 in #2276 - fix(grafana): track events for all owned resources by @weisdd in #2299
- fix(grafana): delete dangling ingress by @weisdd in #2298
- fix(grafana): delete dangling route by @weisdd in #2301
- fix(controllers): reflect changes in library panels by @weisdd in #2320
- Update weekly sync link by @theSuess in #2344
- fix(Grafana):
CreateContainerConfigErrorwithdisableDefaultAdminSecretand admin secret missing by @Baarsgaard in #2356 - fix(useKubeAuth): Require separate ServiceAccount token without K8s permissions by @Baarsgaard in #2371
- fix(Release): Remove
vprefix from Helm Chart version by @Baarsgaard in #2377 - fix(controllers): reconcile drifted dashboards by @weisdd in #2381
Dependencies
- chore(deps): bump sigstore/cosign-installer from 3.10.0 to 4.0.0 by @dependabot[bot] in #2224
- fix(deps): update github.com/grafana/grafana-openapi-client-go digest to d92957c by @renovate-sh-app[bot] in #2228
- fix(deps): update github.com/openshift/api digest to 8c9acca by @renovate-sh-app[bot] in #2229
- fix(deps): update k8s.io/utils digest to bc988d5 by @renovate-sh-app[bot] in #2230
New Contributors
- @renovate-sh-app[bot] made their first contribution in #2228
- @npapapietro made their first contribution in #2251
- @Miguel-Barros96 made their first contribution in #2276
- @mmmommm made their first contribution in #2297
Full Changelog: v5.20.0...v5.21.0
v5.20.0
Welcome to release 5.20.0 of the Grafana Operator!
The biggest new feature is support for service account management using the operator. We also added some other quality of live improvements (like the ability to use latest as a plugin version) and implemented some long overdue bug fixes!
Upgrade instructions
Using Helm
# Upgrade the operator image & deployment
helm upgrade -i grafana-operator oci://ghcr.io/grafana/helm-charts/grafana-operator --version v5.20.0
# Upgrading CRDs
kubectl apply --server-side --force-conflicts -f https://github.com/grafana/grafana-operator/releases/download/v5.20.0/crds.yamlUsing kubectl
# Namespace Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.20.0/kustomize-namespace_scoped.yaml
# Cluster Scope
kubectl replace -f https://github.com/grafana/grafana-operator/releases/download/v5.20.0/kustomize-cluster_scoped.yaml Using kustomize
flux pull artifact oci://ghcr.io/grafana/kustomize/grafana-operator:v5.20.0 --output ./grafana-operator/Using OLM
Releases are published to operatorhub.io 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
Features
- feat(plugins): add support for latest version, fix version preference for duplicate plugins by @weisdd in #2158
- Manage Grafana Service Accounts from the Grafana CR by @ndk in #2125
- feat: added watchers for cm, secrets in datasource_controller by @vignesh-codes in #2178
- feat: Option to auto-upgrade CRDs with Helm by @denis-ryzhkov in #2192
- feat: added watchers for cm, secrets in contactpoint_controller by @vignesh-codes in #2202
- feat: added reconcile logic for secrets in serviceaccount_controller by @vignesh-codes in #2203
Fixes
- fix(plugins): properly handle version preference in Sanitize, add CRD plugin validations by @weisdd in #2162
- fix(plugins): ConfigMap key collisions for cross-namespace ds/db/lp with the same names by @weisdd in #2170
- fix(plugins): remove ConfigMap key if no plugins left by @weisdd in #2179
- fix(librarypanel): finalize plugins, mitigate HTTP errors for non-existent panels by @weisdd in #2180
Dependencies
- chore(deps): bump github.com/docker/go-connections from 0.5.0 to 0.6.0 in the gomod group by @dependabot[bot] in #2140
- chore(deps): bump actions/download-artifact from 4 to 5 by @dependabot[bot] in #2139
- chore(deps): bump the gha group with 2 updates by @dependabot[bot] in #2138
- chore(deps): bump actions/create-github-app-token from 2.1.0 to 2.1.1 in the gha group by @dependabot[bot] in #2148
- chore(deps): bump the gomod group with 4 updates by @dependabot[bot] in #2147
- chore(deps): bump actions/checkout from 4.2.2 to 5.0.0 by @dependabot[bot] in #2150
- chore(deps): bump actions/upload-pages-artifact from 3.0.1 to 4.0.0 by @dependabot[bot] in #2149
- chore(deps): bump the gomod group with 3 updates by @dependabot[bot] in #2155
- chore(deps): bump azure/setup-helm from 4.3.0 to 4.3.1 in the gha group by @dependabot[bot] in #2154
- chore(deps): bump aquasecurity/trivy-action from 0.32.0 to 0.33.0 in the gha group by @dependabot[bot] in #2164
- chore(deps): bump actions/attest-build-provenance from 2.4.0 to 3.0.0 by @dependabot[bot] in #2165
- chore(deps): bump the gomod group with 2 updates by @dependabot[bot] in #2181
- chore(deps): bump actions/setup-python from 5.6.0 to 6.0.0 by @dependabot[bot] in #2183
- chore(deps): bump the gha group with 2 updates by @dependabot[bot] in #2182
- chore(deps): bump actions/labeler from 5.0.0 to 6.0.1 by @dependabot[bot] in #2185
- chore(deps): bump actions/stale from 9.1.0 to 10.0.0 by @dependabot[bot] in #2186
- chore(deps): bump actions/setup-go from 5.5.0 to 6.0.0 by @dependabot[bot] in #2184
- chore(deps): bump the gha group with 2 updates by @dependabot[bot] in #2197
- chore(deps): bump the gomod group with 5 updates by @dependabot[bot] in #2196
- chore(deps): bump github.com/testcontainers/testcontainers-go from 0.38.0 to 0.39.0 in the gomod group by @dependabot[bot] in #2199
- chore(deps): bump the gomod group with 2 updates by @dependabot[bot] in #2204
- chore(deps): bump github.com/onsi/ginkgo/v2 from 2.25.3 to 2.26.0 in the gomod group by @dependabot[bot] in #2211
- chore(deps): bump the gha group with 4 updates by @dependabot[bot] in #2212
- chore(deps): bump the gha group with 2 updates by @dependabot[bot] in #2219
- chore(deps): bump sigs.k8s.io/controller-runtime from 0.22.1 to 0.22.3 in the gomod group by @dependabot[bot] in #2218
New Contributors
- @ndk made their first contribution in #2125
- @vignesh-codes made their first contribution in #2178
- @denis-ryzhkov made their first contribution in #2192
- @RaviTejaNalluri made their first contribution in #2173
- @Duologic made their first contribution in #2205
Full Changelog: v5.19.0...v5.20.0
v5.19.4
This minor release only contains changes to the release pipeline, no functionality has been added or removed
See the v5.19.0 release notes for more details.
v5.19.3
This minor release only contains changes to the release pipeline, no functionality has been added or removed
See the v5.19.0 release notes for more details.
v5.19.2
This minor release only contains changes to the release pipeline, no functionality has been added or removed
See the v5.19.0 release notes for more details.
v5.19.1
This minor release only contains changes to the release pipeline, no functionality has been added or removed
See the v5.19.0 release notes for more details.