Skip to content
Open
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
6 changes: 5 additions & 1 deletion deploy/charts/buzz/Chart.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@ description: |
(subcharts on) and HA production (external services, existingSecret).
type: application
version: 0.1.8
appVersion: "0.1.0"
# Post-auto-migrate image (see #988). Empty values.image.tag falls back here —
# keep this on a tag that understands BUZZ_AUTO_MIGRATE (compose uses `:main`).
appVersion: "main"
home: https://github.com/block/buzz
sources:
- https://github.com/block/buzz
Expand All @@ -25,6 +27,8 @@ annotations:
artifacthub.io/changes: |
- kind: added
description: Optional immutable relay image digest pinning with backwards-compatible tag fallback.
- kind: fixed
description: Default appVersion tracks ghcr.io/block/buzz:main so BUZZ_AUTO_MIGRATE works out of the box (#2473).
artifacthub.io/license: Apache-2.0

# Optional eval-only subcharts. Production deploys disable both and point
Expand Down
34 changes: 34 additions & 0 deletions deploy/charts/buzz/tests/render_test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,40 @@ tests:
name: BUZZ_HUDDLE_AUDIO_AVAILABLE
value: "true"
template: templates/deployment.yaml
# Empty image.tag falls back to Chart.appVersion — must be post-auto-migrate (#2473).
- equal:
path: spec.template.spec.containers[0].image
value: ghcr.io/block/buzz:main
template: templates/deployment.yaml
# Security default: media GET/HEAD reads must be auth-gated out of the
# box. A private attachment must never be publicly readable by URL/hash
# in an unmodified render. If this assertion fails, someone flipped the
# default — treat that as a security regression, not a config tweak.
- contains:
path: spec.template.spec.containers[0].env
content:
name: BUZZ_REQUIRE_MEDIA_GET_AUTH
value: "true"
template: templates/deployment.yaml

- it: lets an explicit value opt out of media read auth for dev/public deployments
set:
relayUrl: wss://buzz.example.com
ownerPubkey: "0000000000000000000000000000000000000000000000000000000000000000"
externalPostgresql.url: postgres://u:p@h:5432/d
externalRedis.url: redis://h:6379
s3.endpoint: http://minio:9000
s3.accessKey: a
s3.secretKey: s
relay.requireMediaGetAuth: false
asserts:
- contains:
path: spec.template.spec.containers[0].env
content:
name: BUZZ_REQUIRE_MEDIA_GET_AUTH
value: "false"
template: templates/deployment.yaml

- it: renders virtual-hosted S3 addressing for providers that require it
set:
relayUrl: wss://buzz.example.com
Expand Down
2 changes: 2 additions & 0 deletions deploy/charts/buzz/values.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@ quickstart: false
# ── Image ────────────────────────────────────────────────────────────────────
image:
repository: ghcr.io/block/buzz
# Empty → Chart.appVersion (must be a post-auto-migrate image; see #2473).
# Pin to sha-<7> or a release tag for production.
tag: "" # empty → .Chart.AppVersion
digest: "" # optional sha256:...; when set, overrides tag
pullPolicy: IfNotPresent
Expand Down