diff --git a/.github/workflows/bbolt-deprecation.yml b/.github/workflows/bbolt-deprecation.yml deleted file mode 100644 index 8bc14a9f..00000000 --- a/.github/workflows/bbolt-deprecation.yml +++ /dev/null @@ -1,71 +0,0 @@ -name: BBolt Deprecation - -on: - pull_request: - -jobs: - bbolt-deprecated: - name: "bbolt: deprecated (v1.98.0)" - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Start Minikube - uses: medyagh/setup-minikube@master - with: - cache: true - kubernetes-version: v1.34.0 - addons: default-storageclass,storage-provisioner,ingress - - - name: Helm Template - run: | - output=$(helm template test charts/bindplane \ - --values test/cases/bbolt-deprecated/values.yaml 2>&1) - echo "$output" - - - name: Verify Deprecation Warning - run: | - output=$(helm install test charts/bindplane \ - --values test/cases/bbolt-deprecated/values.yaml \ - --dry-run=client 2>&1 || true) - echo "$output" - if echo "$output" | grep -q "WARNING: backend.type 'bbolt' is deprecated"; then - echo "Deprecation warning found." - else - echo "ERROR: Expected deprecation warning not found in NOTES output." - exit 1 - fi - - bbolt-removed: - name: "bbolt: removed (v1.99.0)" - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - - name: Verify Template Failure - run: | - if helm template test charts/bindplane \ - --values test/cases/bbolt-removed/values.yaml 2>&1; then - echo "ERROR: Expected helm template to fail for bbolt with v1.99.0, but it succeeded." - exit 1 - else - echo "Helm template correctly rejected bbolt with v1.99.0." - fi - - - name: Verify Error Message - run: | - output=$(helm template test charts/bindplane \ - --values test/cases/bbolt-removed/values.yaml 2>&1 || true) - echo "$output" - if echo "$output" | grep -q "backend.type 'bbolt' is not supported with BindPlane versions newer than v1.98.0"; then - echo "Correct error message found." - else - echo "ERROR: Expected error message not found." - exit 1 - fi diff --git a/charts/bindplane/Chart.yaml b/charts/bindplane/Chart.yaml index fa3056ad..4f46e76c 100644 --- a/charts/bindplane/Chart.yaml +++ b/charts/bindplane/Chart.yaml @@ -3,10 +3,10 @@ name: bindplane description: Bindplane is an observability pipeline. type: application # The chart's version -version: 1.33.2 +version: 1.33.3 # The Bindplane tagged release. If the user does not # set the `image.tag` values option, this version is used. -appVersion: 1.98.2 +appVersion: 1.99.1 keywords: - kubernetes - bindplane diff --git a/charts/bindplane/README.md b/charts/bindplane/README.md index 67b9f918..fea892c8 100644 --- a/charts/bindplane/README.md +++ b/charts/bindplane/README.md @@ -1,6 +1,6 @@ # bindplane -![Version: 1.33.2](https://img.shields.io/badge/Version-1.33.2-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.98.2](https://img.shields.io/badge/AppVersion-1.98.2-informational?style=flat-square) +![Version: 1.33.3](https://img.shields.io/badge/Version-1.33.3-informational?style=flat-square) ![Type: application](https://img.shields.io/badge/Type-application-informational?style=flat-square) ![AppVersion: 1.99.1](https://img.shields.io/badge/AppVersion-1.99.1-informational?style=flat-square) Bindplane is an observability pipeline. @@ -71,7 +71,7 @@ Bindplane is an observability pipeline. | backend.postgres.sslsecret.sslkeySubPath | string | `"client.key"` | Path to the client private key used to authenticate with the Postgres server, when mutual TLS is required. Required when `sslcertSubPath` is set. | | backend.postgres.sslsecret.sslrootcertSubPath | string | `"ca.crt"` | Path to the CA certificate used to verify the Postgres server's certificate. | | backend.postgres.username | string | `""` | Username to use when connecting to Postgres. | -| backend.type | string | `"bbolt"` | Backend to use for persistent storage. Available options are `bbolt` (deprecated), and `postgres`. BBolt has been deprecated since February 2025 and was removed in BindPlane v1.99.0 (April 2026). When using `bbolt`, the image tag must be v1.98.0 or older. | +| backend.type | string | `"postgres"` | Backend to use for persistent storage. Available options are `bbolt` (removed, only supported with image tag v1.98.0 or older), and `postgres`. | | busybox_image | string | `"busybox:latest"` | The container image to use for the busybox init container. | | command | list | `[]` | Optional command overrides for the Bindplane container in all Bindplane pods. | | config.accept_eula | bool | `true` | Whether or not to accept the EULA. EULA acceptance is required. See https://observiq.com/legal/eula. | diff --git a/charts/bindplane/templates/_helpers.tpl b/charts/bindplane/templates/_helpers.tpl index 7d2cda00..5d9b224b 100644 --- a/charts/bindplane/templates/_helpers.tpl +++ b/charts/bindplane/templates/_helpers.tpl @@ -178,18 +178,3 @@ Render Postgres TLS volumes for sslSource=secret. {{- end }} {{- end -}} {{- end -}} - -{{/* -Validate that bbolt is not used with BindPlane versions newer than v1.98.0. -BBolt support was removed in BindPlane v1.99.0 (April 2026). -*/}} -{{- define "bindplane.validate_bbolt" -}} -{{- if eq .Values.backend.type "bbolt" -}} -{{- $tag := include "bindplane.tag" . | trimPrefix "v" -}} -{{- if regexMatch "^[0-9]+\\.[0-9]+\\.[0-9]+" $tag -}} -{{- if semverCompare ">=1.99.0" $tag -}} -{{- fail "backend.type 'bbolt' is not supported with BindPlane versions newer than v1.98.0. BBolt was removed in BindPlane v1.99.0 (April 2026). Please migrate to backend.type 'postgres'." -}} -{{- end -}} -{{- end -}} -{{- end -}} -{{- end -}} diff --git a/charts/bindplane/templates/bindplane.yaml b/charts/bindplane/templates/bindplane.yaml index af3c46a4..d3e0dac8 100644 --- a/charts/bindplane/templates/bindplane.yaml +++ b/charts/bindplane/templates/bindplane.yaml @@ -1,4 +1,3 @@ -{{- include "bindplane.validate_bbolt" . -}} apiVersion: apps/v1 kind: {{ include "bindplane.deployment_type" . }} metadata: diff --git a/charts/bindplane/values.schema.json b/charts/bindplane/values.schema.json index ae29d312..efd92223 100644 --- a/charts/bindplane/values.schema.json +++ b/charts/bindplane/values.schema.json @@ -7,7 +7,7 @@ "properties": { "type": { "type": "string", - "enum": ["postgres", "bbolt"] + "enum": ["postgres"] } } }, diff --git a/charts/bindplane/values.yaml b/charts/bindplane/values.yaml index 75e7ad9e..fee2a37c 100644 --- a/charts/bindplane/values.yaml +++ b/charts/bindplane/values.yaml @@ -2,8 +2,8 @@ multiAccount: false backend: - # -- Backend to use for persistent storage. Available options are `bbolt` (deprecated), and `postgres`. BBolt has been deprecated since February 2025 and was removed in BindPlane v1.99.0 (April 2026). When using `bbolt`, the image tag must be v1.98.0 or older. - type: bbolt + # -- Backend to use for persistent storage. Available options are `bbolt` (removed, only supported with image tag v1.98.0 or older), and `postgres`. + type: postgres # bbolt is deprecated since February 2025 and was removed in BindPlane v1.99.0 (April 2026). Please migrate to postgres. bbolt: diff --git a/test/cases/bbolt-deprecated/values.yaml b/test/cases/bbolt-deprecated/values.yaml deleted file mode 100644 index 1942b672..00000000 --- a/test/cases/bbolt-deprecated/values.yaml +++ /dev/null @@ -1,13 +0,0 @@ -# Test that bbolt still renders with a deprecation warning -# when using BindPlane v1.98.0 or older. -backend: - type: bbolt - -image: - tag: "v1.98.0" - -config: - username: bpuser - password: bppass - sessions_secret: 4484766F-5016-4077-B8E0-0DE1D637854B - licenseUseSecret: true diff --git a/test/cases/bbolt-removed/values.yaml b/test/cases/bbolt-removed/values.yaml deleted file mode 100644 index 122147a2..00000000 --- a/test/cases/bbolt-removed/values.yaml +++ /dev/null @@ -1,12 +0,0 @@ -# Test that bbolt is rejected when using BindPlane v1.99.0 or newer. -backend: - type: bbolt - -image: - tag: "v1.99.0" - -config: - username: bpuser - password: bppass - sessions_secret: 4484766F-5016-4077-B8E0-0DE1D637854B - licenseUseSecret: true diff --git a/test/cases/default/values.yaml b/test/cases/default/values.yaml index 772a3f65..d8b5c61d 100644 --- a/test/cases/default/values.yaml +++ b/test/cases/default/values.yaml @@ -1,3 +1,11 @@ +backend: + type: postgres + postgres: + host: postgres.postgres.svc.cluster.local + database: bindplane + username: postgres + password: password + extraEnv: - name: BINDPLANE_LOGGING_LEVEL value: debug diff --git a/test/cases/ingress/values.yaml b/test/cases/ingress/values.yaml index 81ecda9d..0e677eaf 100644 --- a/test/cases/ingress/values.yaml +++ b/test/cases/ingress/values.yaml @@ -7,6 +7,14 @@ config: web_url: https://bindplane.external.com licenseUseSecret: true +backend: + type: postgres + postgres: + host: postgres.postgres.svc.cluster.local + database: bindplane + username: postgres + password: password + # Ingress ingress: enable: true diff --git a/test/cases/ldap/values.yaml b/test/cases/ldap/values.yaml index e5dc773e..ec2df1b8 100644 --- a/test/cases/ldap/values.yaml +++ b/test/cases/ldap/values.yaml @@ -5,9 +5,13 @@ config: sessions_secret: 4484766F-5016-4077-B8E0-0DE1D637854B licenseUseSecret: true -image: - name: ghcr.io/observiq/bindplane-ee - tag: 1.53.0 +backend: + type: postgres + postgres: + host: postgres.postgres.svc.cluster.local + database: bindplane + username: postgres + password: password auth: type: ldap diff --git a/test/cases/volume/values.yaml b/test/cases/volume/values.yaml index b24a25dc..67e2b3b3 100644 --- a/test/cases/volume/values.yaml +++ b/test/cases/volume/values.yaml @@ -1,3 +1,11 @@ +backend: + type: postgres + postgres: + host: postgres.postgres.svc.cluster.local + database: bindplane + username: postgres + password: password + # Required options config: username: bpuser