mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 19:01:54 +00:00
Stalwart v1.0.0 rejects unknown JMAP properties ("Invalid property" ->
notCreated/notUpdated), validates OIDC tokens more strictly and refuses to
open a data store from before 1.0. Port the role and protect existing
installs:
- Milter: hostname/timeoutConnect/timeoutCommand/timeoutData become
host/connectTimeout/commandTimeout/dataTimeout; the existing milter is
looked up by host.
- Onion relay route: address becomes host.
- OIDC directory: requireAudience is gone. Set skipAudienceValidation and
unscopedTokens=interoperable on create and update, so Keycloak tokens
(no Stalwart audience, no mail scope) keep working for the WebUI and
Roundcube XOAUTH2.
- WebUI: send oauthClientId only with SSO enabled; without SSO the WebUI
falls back to its own client metadata document.
- Store guard: before anything changes, a running Stalwart whose table u
still has the 0.16 bigint layout stops the deploy and points to the
stalwart-migrate steps, which the README now documents under
"Upgrading from 0.16".
- Updater: pin the WebUI git_tags source to v2.* to match server 1.x.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
13 lines
526 B
Django/Jinja
13 lines
526 B
Django/Jinja
{
|
|
"using": ["urn:ietf:params:jmap:core", "urn:stalwart:jmap"],
|
|
"methodCalls": [["x:MtaMilter/set", {"create": {"av": {
|
|
"host": {{ STALWART_CLAMAV_HOST | to_json }},
|
|
"port": {{ STALWART_CLAMAV_MILTER_PORT | int }},
|
|
"stages": {"data": true},
|
|
"tempFailOnError": false,
|
|
"connectTimeout": {{ STALWART_CLAMAV_MILTER_TIMEOUT_CONNECT_MS | int }},
|
|
"commandTimeout": {{ STALWART_CLAMAV_MILTER_TIMEOUT_COMMAND_MS | int }},
|
|
"dataTimeout": {{ STALWART_CLAMAV_MILTER_TIMEOUT_DATA_MS | int }}
|
|
}}}, "c0"]]
|
|
}
|