Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
98 changes: 98 additions & 0 deletions .changes/charts/redpanda/v25.1.1-beta1.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
## v25.1.1-beta1 - 2025-04-08
### Added
* Added a chart wide `podTemplate` field which may be used to control Pod attributes chart wide.

This field has a lower precedence than `statefulset.podTemplate` and
`post_install_job.podTemplate` but will still be merged with them.
* `podTemplate`, `statefulset.podTemplate`, and `post_install_job.podTemplate` may now contain template expressions **with in string fields**

To compensate for some of the functionality that was lost with the removal of
fields like `extraVolumes`, we've upgraded `podTemplate` fields to support
templating. Rather than allowing full control over a structured value, we've
reduced the scope to only string fields. This is significantly more
maintainable and less error prone.

As an example, the below snippet will apply the release name as an annotation
to all Pods created by the chart.

```yaml
podTemplate:
annotations:
"keys-cannot-be-templated": '{{ .Release.Name }}' # But values can!
```

See `values.yaml` for additional examples.
### Changed
* Promoted the config-watcher sidecar into a real go binary that handles user management and simplifies cluster health checks so they no longer fail when the sole issue is that other nodes in the cluster are unavailable. Additionally the new sidecar subsumes the behavior of the `statefulset.sideCars.controllers` stanza which should now be specified via their own `enabled` flags.
* `clusterDomain` now defaults to `cluster.local.` (A trialing `.` has been added) and the chart no longer adds trailing `.`'s to internal domains.

For users not experiencing issues with trailing `.`'s this change has no
effect. For users that have had issues with trailing `.`'s, it's now possible
to opt-out of this behavior by explicitly setting `clusterDomain` to `cluster.local`.

For users that override `clusterDomain`, copied a previous releases
values.yaml, or use the `--reuse-values` flag, trailing `.`'s will be tripped
from domains upon updating. This behavior may be opted into by appending a
`.` to `clusterDomain` prior to upgrading.
* Bump AppVersion to v24.3.6 Redpanda release
* Bump Redpanda operator side car container tag to `v2.3.7-24.3.6`.
* `values.schema.json` is now "closed" (`additionalProperties: false`)

Any unexpected values will result in a validation error,previously they would
have been ignored.
* Update Console depedency to latest version with breaking change. Please visit Console change-log.
* The name of the container running redpanda is now always set to `redpanda`.
* bumped `appVersion` to [v25.1.1](https://github.com/redpanda-data/redpanda/releases/tag/v25.1.1).
### Removed
* Connectors sub-chart integration.

The connectors chart may still be deployed separately, though it is not
officially support. If possible, it is recommended to migrate to redpanda
connect.
* Removed the deprecated fields `license_key` and `license_secret_ref` in favor
of `enterprise.license` and `enterprise.licenseSecretRef`, respectively.
* `statefulset.securityContext`, `statefulset.sideCars.configWatcher.securityContext` have been removed.

These fields previously served as both PodSecurityContext and SecurityContext
across the entire chart which led to confusing semantics that couldn't be
fixed without breaking backwards compatiblity.

The top level `podTemplate` field may be used to control
PodSecurityContexts and SecurityContexts across the chart.
* Fields that would be better served through `podTemplate` have been removed in favor of using `podTemplate`.

Removed fields:
- `nodeSelector` -> `podTemplate.spec.nodeSelector`
- `affinity` -> `podTemplate.spec.affinity`
- `tolerations` -> `podTemplate.spec.tolerations`
- `imagePullSecrets` -> `podTemplate.spec.imagePullSecrets`
- `statefulset.annotations` -> `statefulset.podTemplate.annotations`
- `statefulset.startupProbe` -> `statefulset.podTemplate.spec.containers[0].startupProbe`
- `statefulset.livenessProbe` -> `statefulset.podTemplate.spec.containers[0].livenessProbe`
- `statefulset.readinessProbe` -> `statefulset.podTemplate.spec.containers[1].readinessProbe`
- `statefulset.podAffinity` -> `statefulset.podTemplate.spec.affinity.podAffinity`
- `statefulset.nodeSelector` -> `statefulset.podTemplate.spec.nodeSelector`
- `statefulset.priorityClassName` -> `statefulset.podTemplate.spec.priorityClassName`
- `statefulset.tolerations` -> `statefulset.podTemplate.spec.tolerations`
- `statefulset.topologySpreadConstraints` -> `statefulset.podTemplate.spec.topologySpreadConstraints`
- `statefulset.terminationGracePeriodSeconds` -> `statefulset.podTemplate.spec.terminationGracePeriodSeconds`
- `statefulset.extraVolumes` -> `statefulset.podTemplate.spec.volumes`
- `statefulset.extraVolumesMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.initContainers.*.extraVolumesMounts` -> `statefulset.podTemplate.spec.initContainers[*].volumeMounts`
- `statefulset.initContainers.*.resources` -> `statefulset.podTemplate.spec.initContainers[*].resources`
- `statefulset.initContainers.extraInitContainers` -> `statefulset.podTemplate.spec.initContainers`
- `statefulset.sidecars.configWatcher.extraVolumeMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.sidecars.configWatcher.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.configWatcher.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
- `statefulset.sidecars.controllers.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.controllers.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
- `statefulset.sidecars.extraVolumeMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.sidecars.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
### Fixed
* Reverse order of applying resources to first create ClusterRole and then ClusterRoleBinding.
When Redpanda custom resource has enabled RBAC the reconciliation was blocked due
ClusterRoleBinding referencing not yet created ClusterRole.

* Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
* Prevent broker nodes from restarting when solely the cluster replica amount changes
99 changes: 99 additions & 0 deletions charts/redpanda/CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -104,6 +104,105 @@ of `enterprise.license` and `enterprise.licenseSecretRef`, respectively.
* Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
* Prevent broker nodes from restarting when solely the cluster replica amount changes

## v25.1.1-beta1 - 2025-04-08
### Added
* Added a chart wide `podTemplate` field which may be used to control Pod attributes chart wide.

This field has a lower precedence than `statefulset.podTemplate` and
`post_install_job.podTemplate` but will still be merged with them.
* `podTemplate`, `statefulset.podTemplate`, and `post_install_job.podTemplate` may now contain template expressions **with in string fields**

To compensate for some of the functionality that was lost with the removal of
fields like `extraVolumes`, we've upgraded `podTemplate` fields to support
templating. Rather than allowing full control over a structured value, we've
reduced the scope to only string fields. This is significantly more
maintainable and less error prone.

As an example, the below snippet will apply the release name as an annotation
to all Pods created by the chart.

```yaml
podTemplate:
annotations:
"keys-cannot-be-templated": '{{ .Release.Name }}' # But values can!
```

See `values.yaml` for additional examples.
### Changed
* Promoted the config-watcher sidecar into a real go binary that handles user management and simplifies cluster health checks so they no longer fail when the sole issue is that other nodes in the cluster are unavailable. Additionally the new sidecar subsumes the behavior of the `statefulset.sideCars.controllers` stanza which should now be specified via their own `enabled` flags.
* `clusterDomain` now defaults to `cluster.local.` (A trialing `.` has been added) and the chart no longer adds trailing `.`'s to internal domains.

For users not experiencing issues with trailing `.`'s this change has no
effect. For users that have had issues with trailing `.`'s, it's now possible
to opt-out of this behavior by explicitly setting `clusterDomain` to `cluster.local`.

For users that override `clusterDomain`, copied a previous releases
values.yaml, or use the `--reuse-values` flag, trailing `.`'s will be tripped
from domains upon updating. This behavior may be opted into by appending a
`.` to `clusterDomain` prior to upgrading.
* Bump AppVersion to v24.3.6 Redpanda release
* Bump Redpanda operator side car container tag to `v2.3.7-24.3.6`.
* `values.schema.json` is now "closed" (`additionalProperties: false`)

Any unexpected values will result in a validation error,previously they would
have been ignored.
* Update Console depedency to latest version with breaking change. Please visit Console change-log.
* The name of the container running redpanda is now always set to `redpanda`.
* bumped `appVersion` to [v25.1.1](https://github.com/redpanda-data/redpanda/releases/tag/v25.1.1).
### Removed
* Connectors sub-chart integration.

The connectors chart may still be deployed separately, though it is not
officially support. If possible, it is recommended to migrate to redpanda
connect.
* Removed the deprecated fields `license_key` and `license_secret_ref` in favor
of `enterprise.license` and `enterprise.licenseSecretRef`, respectively.
* `statefulset.securityContext`, `statefulset.sideCars.configWatcher.securityContext` have been removed.

These fields previously served as both PodSecurityContext and SecurityContext
across the entire chart which led to confusing semantics that couldn't be
fixed without breaking backwards compatiblity.

The top level `podTemplate` field may be used to control
PodSecurityContexts and SecurityContexts across the chart.
* Fields that would be better served through `podTemplate` have been removed in favor of using `podTemplate`.

Removed fields:
- `nodeSelector` -> `podTemplate.spec.nodeSelector`
- `affinity` -> `podTemplate.spec.affinity`
- `tolerations` -> `podTemplate.spec.tolerations`
- `imagePullSecrets` -> `podTemplate.spec.imagePullSecrets`
- `statefulset.annotations` -> `statefulset.podTemplate.annotations`
- `statefulset.startupProbe` -> `statefulset.podTemplate.spec.containers[0].startupProbe`
- `statefulset.livenessProbe` -> `statefulset.podTemplate.spec.containers[0].livenessProbe`
- `statefulset.readinessProbe` -> `statefulset.podTemplate.spec.containers[1].readinessProbe`
- `statefulset.podAffinity` -> `statefulset.podTemplate.spec.affinity.podAffinity`
- `statefulset.nodeSelector` -> `statefulset.podTemplate.spec.nodeSelector`
- `statefulset.priorityClassName` -> `statefulset.podTemplate.spec.priorityClassName`
- `statefulset.tolerations` -> `statefulset.podTemplate.spec.tolerations`
- `statefulset.topologySpreadConstraints` -> `statefulset.podTemplate.spec.topologySpreadConstraints`
- `statefulset.terminationGracePeriodSeconds` -> `statefulset.podTemplate.spec.terminationGracePeriodSeconds`
- `statefulset.extraVolumes` -> `statefulset.podTemplate.spec.volumes`
- `statefulset.extraVolumesMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.initContainers.*.extraVolumesMounts` -> `statefulset.podTemplate.spec.initContainers[*].volumeMounts`
- `statefulset.initContainers.*.resources` -> `statefulset.podTemplate.spec.initContainers[*].resources`
- `statefulset.initContainers.extraInitContainers` -> `statefulset.podTemplate.spec.initContainers`
- `statefulset.sidecars.configWatcher.extraVolumeMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.sidecars.configWatcher.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.configWatcher.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
- `statefulset.sidecars.controllers.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.controllers.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
- `statefulset.sidecars.extraVolumeMounts` -> `statefulset.podTemplate.spec.containers[*].volumeMounts`
- `statefulset.sidecars.resources` -> `statefulset.podTemplate.spec.containers[*].resources`
- `statefulset.sidecars.securityContext` -> `statefulset.podTemplate.spec.containers[*].securityContext`
### Fixed
* Reverse order of applying resources to first create ClusterRole and then ClusterRoleBinding.
When Redpanda custom resource has enabled RBAC the reconciliation was blocked due
ClusterRoleBinding referencing not yet created ClusterRole.

* Fixed an issue where not explicitly specifying a SASL auth mechanism when SASL is enabled caused Console to fail to start up.
* Prevent broker nodes from restarting when solely the cluster replica amount changes

## v5.9.20 - 2025-02-06
### Changed
* Attempted lookups of the bootstrap user's existing password are no longer gated by `.Release.IsUpgrade`.
Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ type: application
# The chart version and the app version are not the same and will not track
# together. The chart version is a semver representation of changes to this
# chart.
version: 5.9.20
version: 25.1.1-beta1

# The app version is the default version of Redpanda to install.
# ** NOTE for maintainers: please ensure the artifacthub image annotation is updated before merging
Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
description: Find the default values and descriptions of settings in the Redpanda Helm chart.
---

![Version: 5.9.20](https://img.shields.io/badge/Version-5.9.20-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v25.1.1](https://img.shields.io/badge/AppVersion-v25.1.1-informational?style=flat-square)
![Version: 25.1.1-beta1](https://img.shields.io/badge/Version-25.1.1--beta1-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: v25.1.1](https://img.shields.io/badge/AppVersion-v25.1.1-informational?style=flat-square)

This page describes the official Redpanda Helm Chart. In particular, this page describes the contents of the chart’s [`values.yaml` file](https://github.com/redpanda-data/helm-charts/blob/main/charts/redpanda/values.yaml). Each of the settings is listed and described on this page, along with any default values.

Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/chart_template_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ import (
"sigs.k8s.io/controller-runtime/pkg/client/apiutil"
"sigs.k8s.io/yaml"

"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/pkg/helm"
"github.com/redpanda-data/redpanda-operator/pkg/kube"
"github.com/redpanda-data/redpanda-operator/pkg/testutil"
Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/chart_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ import (
"sigs.k8s.io/yaml"

"github.com/redpanda-data/redpanda-operator/charts/console/v3"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/gotohelm/helmette"
"github.com/redpanda-data/redpanda-operator/pkg/helm"
"github.com/redpanda-data/redpanda-operator/pkg/helm/helmtest"
Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/client/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,7 @@ import (
"github.com/twmb/franz-go/pkg/sr"
corev1 "k8s.io/api/core/v1"

"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/gotohelm/helmette"
)

Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/client/client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ import (
corev1 "k8s.io/api/core/v1"
"k8s.io/utils/ptr"

"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/gotohelm/helmette"
)

Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/client_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ import (
"k8s.io/client-go/tools/portforward"
"sigs.k8s.io/yaml"

"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/gotohelm/helmette"
"github.com/redpanda-data/redpanda-operator/pkg/helm"
"github.com/redpanda-data/redpanda-operator/pkg/kube"
Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/go.mod
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
module github.com/redpanda-data/redpanda-operator/charts/redpanda/v5
module github.com/redpanda-data/redpanda-operator/charts/redpanda/v25

go 1.23.7

Expand Down
2 changes: 1 addition & 1 deletion charts/redpanda/helpers_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ import (
"k8s.io/utils/ptr"
"pgregory.net/rapid"

"github.com/redpanda-data/redpanda-operator/charts/redpanda/v5"
"github.com/redpanda-data/redpanda-operator/charts/redpanda/v25"
"github.com/redpanda-data/redpanda-operator/pkg/rapidutil"
)

Expand Down
Loading