fix: mail プロバイダの msmtprc を既定で常に出力 + SMTP メタ項目を拡充
Helm Chart Release / release-chart (push) Successful in 7s

phpfpm の smtp.existingMsmtprcSecret が「references non-existent secret key:
msmtprc」でマウント失敗する件の対処。renderMsmtprc が opt-in で忘れやすかった。

- renderMsmtprc を既定 true に(明示 false のときだけ抑止)
- smtp.tlsVerify(既定 true)を追加。false で msmtprc に tls_certcheck off
  values.schema.json の smtp にも tlsVerify を追加
- 派生キー SMTP_TLS / SMTP_SSL / SMTP_TLS_VERIFY / SMTP_AUTH を Secret に追加
- from 未設定時に msmtprc へ空の from 行を出さないよう修正
- values.yaml / examples / README を更新。0.1.2。
This commit is contained in:
2026-09-08 18:47:25 +09:00
parent 13cb27a5ec
commit 2b17088fae
7 changed files with 93 additions and 21 deletions
+24
View File
@@ -61,6 +61,30 @@
## チャート改修履歴
### renderMsmtprc を既定 true 化 + SMTP メタ項目の拡充(2026-09-08, v0.1.2)
**症状**: phpfpm 側で `smtp.existingMsmtprcSecret: cred-<名前>` を指定したら
`MountVolume.SetUp failed ... references non-existent secret key: msmtprc`。
配布された `cred-*` Secret に `msmtprc` キーが無かった。
**原因**: `mail.providers.<名前>.renderMsmtprc` が opt-in(既定で出力しない)で、
`values.yaml` 上もコメント例にしか無かったため、指定を忘れると `msmtprc` キーが
生成されない。`mail` カテゴリは「完成済み msmtprc も含めて一元管理する」のが目的なので
opt-out にすべきだった。
**修正内容**(`templates/mail-secrets.yaml`):
- `renderMsmtprc` を既定 `true` に(`hasKey` で明示 `false` のときだけ抑止)。
- `smtp.tlsVerify`(既定 `true`)を追加。`false` で `msmtprc` に `tls_certcheck off` を挿入。
`values.schema.json` の `smtp`(`additionalProperties: false`)にも `tlsVerify` を追加。
- 派生キーを Secret に追加: `SMTP_TLS`(starttls か)/ `SMTP_SSL`(暗黙TLSか)/
`SMTP_TLS_VERIFY` / `SMTP_AUTH`(username 有無)。すべて `"true"`/`"false"` の文字列。
`smtp.env` にもこれらが入る(msmtprc 生成より前に env を組み立てているため)。
- `values.yaml` のキー一覧コメント / プロバイダ例、`examples/mail-providers.values.yaml`
(`tlsVerify: false` の社内リレー例を追加)、README を更新。
**対象ファイル**: `templates/mail-secrets.yaml`, `values.schema.json`, `values.yaml`,
`examples/mail-providers.values.yaml`, `Chart.yaml`, `README.md`, `CLAUDE.md`
### helm-release.yaml のリリース判定を3系統に分離 + v0.1.0 タグ補完(2026-09-08)
**症状**: Git タグ `v0.1.0` がリモートに存在しなかった(Registry には