Files
discourse/release/1.0.0+3.5.3
notplants a5a3b36755 feat(db): use POSTGRES_USER in pg_backup; document it in release note
- pg_backup.sh: use the db service's POSTGRES_USER (default postgres) for the
  dump/drop/recreate instead of detecting the superuser at runtime, since the
  recipe now sets that env var; one-line the constants comment
- release note: explain the in-place pg_upgrade + the POSTGRES_USER override
- bump PG_BACKUP_VERSION v4

Verified on cctest: backup + restore via the hooks round-trips with POSTGRES_USER.
2026-06-22 18:46:17 +00:00

21 lines
1.2 KiB
Groff

This release switches from the bitnami image to the official discourse/discourse
image. Some env vars need to be renamed for this migration; everything else
should happen automatically.
Rename these in your app's .env (the values carry over):
DISCOURSE_SMTP_HOST --> DISCOURSE_SMTP_ADDRESS
DISCOURSE_SMTP_USER --> DISCOURSE_SMTP_USER_NAME
DISCOURSE_SMTP_AUTH --> DISCOURSE_SMTP_AUTHENTICATION
DISCOURSE_SMTP_PROTOCOL --> DISCOURSE_SMTP_ENABLE_START_TLS (takes a boolean true/false, not the old tls/ssl value, so translate it rather than copying it straight across)
The database now runs the discourse/postgres image, which upgrades your existing
postgres cluster to a new major version in place on first boot (no dump/restore).
That upgrade runs as the cluster's bootstrap superuser ("install user"), which the
recipe sets via POSTGRES_USER, defaulting to `postgres`. This default is correct
for clusters created by this recipe and the old bitnami recipe, so most operators
need to do nothing. ONLY if your cluster was bootstrapped with a different
superuser (e.g. `discourse`) must you set POSTGRES_USER in your app's .env before
upgrading -- otherwise pg_upgrade aborts with an install-user mismatch.