Skip to content

Commit 1c9bbca

Browse files
dforsberclaude
andcommitted
release: v0.10.1 — cluster admin responses use public hostname
Patch fix for cluster admin paths in Kubernetes deployments: redirects and cluster-status responses now emit the external public_host (falls back to advertised_host for backward compat) so boilstream-admin against a cluster's public endpoint works. Chart: 0.3.2 -> 0.3.3 Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 parent 8ed1ec9 commit 1c9bbca

2 files changed

Lines changed: 13 additions & 2 deletions

File tree

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,17 @@ All notable changes to BoilStream will be documented in this file.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.10.1] - 2026-04-19
9+
10+
### Fixes
11+
12+
- **Cluster admin redirects + responses use public hostname**: Broker→leader redirects from the auth server's leader-check middleware, plus the `host` fields in `LeaderInfoResponse` / `BrokerInfoResponse`, now advertise an externally-reachable hostname when the new `cluster_mode.public_host` is set. Previously these paths only knew about `advertised_host` (in Kubernetes: the pod's internal headless-Service DNS, unreachable from outside the cluster), so `boilstream-admin` against a cluster's public endpoint could be redirected to a `*.svc.cluster.local` target or receive an internal hostname in the cluster status response.
13+
14+
### Features
15+
16+
- **`cluster_mode.public_host` config**: Optional per-node public hostname used for all client-facing paths — admin redirects, `boilstream-admin` cluster status responses, and future extensions for secret / bootstrap-URL vending. `advertised_host` remains the inside-the-cluster DNS name for pod-to-pod gRPC on `internal_api_port`, unchanged. Backward-compatible: missing `public_host` in S3 state (`leader.json`, `brokers/*.json`) deserialises cleanly and falls back to `host`.
17+
- **Helm chart**: `configmap.yaml` overlay auto-renders `public_host = {POD_NAME}.{values.domain}` into each pod's runtime config, kept in sync with the per-pod `TLSRoute` resources (`boilstream-N.<domain>`). Chart version **0.3.3**.
18+
819
## [0.10.0] - 2026-04-18
920

1021
### Features

charts/boilstream/Chart.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@ description: |
66
support. Each pod participates in S3-based leader election and serves
77
per-user catalogs; failed pods are recovered from S3 backups.
88
type: application
9-
version: 0.3.2
10-
appVersion: "0.10.0"
9+
version: 0.3.3
10+
appVersion: "0.10.1"
1111
kubeVersion: ">=1.27.0"
1212
keywords:
1313
- streaming

0 commit comments

Comments
 (0)