mailman/README.md

44 lines
1.5 KiB
Markdown

# mailman
The site-wide antispam defaults are deliberately empty:
```yaml
mailman_antispam_header_checks: []
mailman_antispam_chain_behaviour: discard
```
Mailing-list owners can manage list-specific header matches and select their
action (`accept`, `discard`, `hold`, or `reject`) from Postorius. The global
chain is used only when a matching rule has no explicit action.
Existing lists without any header matches can be initialized through the
Mailman database model by enabling the optional seed operation:
```yaml
mailman_seed_empty_list_header_matches: true
mailman_empty_list_header_matches:
- header: 'X-Spam-Flag'
pattern: '^YES$'
action: 'discard'
```
The operation is idempotent. A list is modified only when its header-match
collection is empty; lists with one or more existing rules are left untouched.
## Verified weekly restart
The optional weekly restart performs separate stop and start operations. It
waits for both systemd and `mailman status` to confirm that Mailman has stopped
before starting it, then checks both signals again to confirm startup:
```yaml
mailman_enable_weekly_verified_restart: true
mailman_weekly_verified_restart_on_calendar: 'Sun *-*-* 04:00:00'
mailman_weekly_verified_restart_stop_timeout: 120
mailman_weekly_verified_restart_start_timeout: 120
```
The timer is deliberately not persistent, so a missed run is not executed
immediately after a server boot. Failures are recorded by systemd in the
`mailman-verified-restart.service` journal.