fix(influxdb): keep API tokens unhashed on 2.9 (REN-723)
ci/woodpecker/pr/ci-scripts-test Pipeline was successful
ci/woodpecker/pr/ci-manifests-test Pipeline was successful
ci/woodpecker/pr/pr-review Pipeline was successful

InfluxDB 2.9 hashes tokens on startup by default. The HA and Grafana
token Jobs read tokens back via `influx auth list`, which returns no
token once hashed, and a downgrade below 2.8 would erase all tokens.
Set INFLUXD_USE_HASHED_TOKENS=false so the 2.9.1 bump stays reversible
with `influxd downgrade 2.4`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
atlas-bot
2026-10-05 17:14:13 +00:00
co-authored by Claude Opus 5.5
parent 8b0aaef728
commit 2bfb3d12e2
2 changed files with 9 additions and 2 deletions
+1 -1
View File
@@ -133,7 +133,7 @@ spec:
set -euo pipefail
log() { printf '[%s] %s\n' "$(date -u +%H:%M:%S)" "$*"; }
# Need jq + kubectl. influxdb:2.7.4 has neither baked in.
# Need jq + kubectl. The influxdb image has neither baked in.
apt-get update -qq
apt-get install -y --no-install-recommends curl jq ca-certificates >/dev/null
KV=$(curl -fsSL https://dl.k8s.io/release/stable.txt)
+8 -1
View File
@@ -53,7 +53,8 @@ spec:
values:
image:
repository: influxdb
# Match VM 108 for format compatibility with `influx restore`.
# Was pinned to VM 108's 2.7.4 for the one-time `influx restore`; that
# migration is done. No downgrade below 2.9 without `influxd downgrade`.
tag: "2.9.1@sha256:db0bdab1e5ad5ee899c127b8c13d9c986a3ced78cd9200dd80a1064bf1533b6e"
# Single replica — InfluxDB OSS doesn't cluster. RWO Ceph-block + Velero
# backups (pending) is the durability story.
@@ -93,6 +94,12 @@ spec:
env:
- name: INFLUXD_STORAGE_WRITE_TIMEOUT
value: "60s"
# 2.9 hashes API tokens on startup by default. Hashed tokens cannot be
# read back, so the token Jobs' `influx auth list` reuse would break,
# and a downgrade below 2.8 would erase every token (HA, Grafana).
# Keep tokens unhashed; enable hashing later as its own change.
- name: INFLUXD_USE_HASHED_TOKENS
value: "false"
# The chart defaults to liveness/readiness with initialDelaySeconds=0,
# so after a crash restart the kubelet kills the pod before shards
# finish opening. Give it 10 minutes to come up cleanly.