build(qa): take the SMTP host, port and TLS flag from QA_ stack variables (#258) #259

Merged
bermudalamb merged 1 commits from chore/258-qa-smtp-stack-vars into main 2026-09-01 11:51:15 -05:00
1 Commits
Author SHA1 Message Date
bermudalambandClaude Opus 5 cbb0090579 build(qa): take the SMTP host, port and TLS flag from QA_ stack variables (#258)
SonarQube Analysis / sonarqube (pull_request) Successful in 28m7s
Linting / lint (pull_request) Successful in 2m9s
QA_SMTP_HOST, QA_SMTP_PORT and QA_SMTP_SECURE were set on the stack but nothing read them: the compose file hardcoded all three, so changing one in Portainer had no effect and gave no sign of that. They now interpolate like the credentials beside them.

Each keeps its Brevo value as a default rather than being left to fall through. The mailer's own fallbacks are Gmail's — smtp.gmail.com, 465, implicit TLS — and Brevo is STARTTLS on 587, so an unset variable with no default here would quietly aim QA at Gmail and fail at send time rather than at boot. `:-` supplies the default only when the variable is unset or empty, so setting one still wins.

Verified with `docker compose config` both ways: unset resolves to smtp-relay.brevo.com/587/false, and set resolves to the supplied values. The #107 compose guard still passes.

Production is deliberately untouched. It hardcodes the same three and nobody has asked to vary them there, and a needless change to the production stack is not worth the deploy.

Closes #258

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-01 11:46:17 -05:00