TODOΒΆ
Credentials in argv:
tasks/01_wait_for_api.yml(βWait until Stalwart leaves bootstrap modeβ) andtasks/11_oidc_restart.ymlpass-u STALWART_ADMIN_USER:STALWART_ADMIN_PASSWORDtocurlinsidecontainer exec, so the recovery admin password sits in the rendered shell command (printed ascmdat-vvwhileMASK_CREDENTIALS_IN_LOGSis off) and in the process list of the container;tasks/jmap_call.ymlalready feeds the same pair throughcurl -K -on stdin. Option: route both waits throughjmap_call.ymlor the same stdin config pattern.System Administrator reaches only the accounts the deploy provisions: v0.16.26 maps no group to a role, so
tasks/admin_role.ymlstampsroleson eachSTALWART_ADMIN_ACCOUNT_NAMESaccount instead. A user who is added to the Keycloak groupadministratorwithout amailboxaccount signs in through the OIDC just-in-time path, which hard-codesUserRoles::User, and stays an ordinary user until the next deploy gives it an account. Option: re-run the grant from a Keycloak group read rather than fromSTALWART_USERS, once Stalwart maps claim groups to roles.