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
+18 -4
View File
@@ -152,9 +152,10 @@ SMTP/IMAP/POP3 のサーバ情報も一元管理** できます。
| `smtp.fromName` | `string` | | 送信者表示名。 |
| `smtp.replyTo` | `string` | | Reply-To アドレス。 |
| `smtp.authMethod` | `string` | | `plain`(既定) / `login` / `cram-md5`。 |
| `smtp.tlsVerify` | `bool` | | 既定 `true`。`false` で TLS 証明書検証を無効化(社内リレー・自己署名向け。生成される `msmtprc` に `tls_certcheck off` が入る)。 |
| `imap.host` ほか | | | 受信 (IMAP) 情報。`host` があれば `IMAP_*` キーを追加。`username`/`password` 省略時は SMTP の値を流用。既定ポート `993`。 |
| `pop3.host` ほか | | | 受信 (POP3) 情報。同上。既定ポート `995`。 |
| `renderMsmtprc` | `bool` | | `true` で Secret に `msmtprc`(msmtp / PHP sendmail 用設定)を含める。 |
| `renderMsmtprc` | `bool` | | **既定 `true`**。Secret に完成済み `msmtprc`(msmtp / PHP sendmail 用)を含める。IMAP だけ使う等で不要なら `false`。 |
| `namespacesOverride` | `[]string` | | このエントリだけ別のネームスペースへ配布する。 |
| `annotations` | `map` | | このエントリの Secret だけに付ける追加アノテーション。 |
@@ -192,8 +193,12 @@ SMTP/IMAP/POP3 のサーバ情報も一元管理** できます。
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_SECURITY=starttls
SMTP_TLS=true # security=starttls のとき true(派生フラグ)
SMTP_SSL=false # security=tls(暗黙TLS)のとき true
SMTP_TLS_VERIFY=true # smtp.tlsVerify の値
SMTP_USERNAME=no-reply@example.com
SMTP_PASSWORD=********
SMTP_AUTH=true # username があれば true
SMTP_FROM=no-reply@example.com
SMTP_FROM_NAME=Example
SMTP_REPLY_TO=
@@ -203,11 +208,10 @@ IMAP_PORT=993
IMAP_SECURITY=tls
IMAP_USERNAME=no-reply@example.com
IMAP_PASSWORD=********
smtp.env # ↓ source して使える env ファイル
smtp.env # ↑ 全キーを `export KEY="value"` にした source 可能なファイル
export SMTP_HOST="smtp.gmail.com"
export SMTP_PORT="587"
...
msmtprc # renderMsmtprc: true のとき。msmtp / PHP sendmail 用
msmtprc # 完成済み msmtp 設定(既定で常に含む。renderMsmtprc: false で抑止)
```
### api / generic エントリ
@@ -351,6 +355,16 @@ Secret 更新時に自動でローリング再起動されます。
各リリースの詳細は `CLAUDE.md` の「チャート改修履歴」を参照。
### v0.1.2(2026-09-08)
- **`renderMsmtprc` の既定を `true` に変更**。`mail.providers.<名前>` を定義すれば
`msmtprc` キーが常に生成されるようになった(従来は明示 `true` が必要で、忘れると
phpfpm 等の `smtp.existingMsmtprcSecret` が `references non-existent secret key: msmtprc`
でマウント失敗した)。不要なら `renderMsmtprc: false`。
- `smtp.tlsVerify`(既定 `true`)を追加。`false` で `msmtprc` に `tls_certcheck off` を出力。
- 派生キー `SMTP_TLS` / `SMTP_SSL` / `SMTP_TLS_VERIFY` / `SMTP_AUTH` を Secret に追加
(フレームワーク側が 3 値 enum を解釈しなくて済むよう真偽値文字列で提供)。
### v0.1.1(2026-09-08)
- `values.schema.json` の `$schema` 行を削除。新しめの JSON Schema バリデータを内蔵する