Mailman packages and configuration are managed by Puppet class `hcoop::service::mail::mailman2` == Migrating Mailman Between Servers == 0. Copy `/etc/mailman/{mm_cfg.py}` to new server * `vhost_cfg.py` is generated by DomTool. 0. Copy `/etc/exim4/mailmandb` to new server 0. Stop mailman to prevent messages from being delivered while copying data: `service mailman stop` 0. Copy `/var/lib/mailman` to new server 0. In `/etc/exim4/conf.d/main/01_exim4-config_listmacrosdef` on: * the new mailman host: unset `HCOOP_MAILMAN_RELAY_HOST` * all other mail servers: set `HCOOP_MAILMAN_RELAY_HOST` to the new mailman host 0. Start mailman on new server: `service mailman start` 0. Reload exim, and everything ought to work DomTool also needs some settings updated. === Move All Lists === The entirety of `/var/lib/mailman` can just be rsynced between servers. This is assuming Debian configuration where system controlled content and data like locks are stored in external directories and just symlinked from `/var/lib/mailman`. == Importing Individual Lists == Not entirely sure, but [[https://mail.python.org/pipermail/mailman-users/2016-October/081482.html|an old post on mailman-users]] might have some insight. == Change List Domain == If a member requests a change in the primary list domain '''LISTNAME''' is the bare list name (e.g. `hcoop-discuss`) '''NEWBASEURL''' is the base url, with no list name (e.g. `lists.hcoop.net`) `sudo -u list withlist -l -r fix_url LISTNAME -u NEWBASEURL` Mailman doesn't care about SSL, except for the list archive link, which is a template and can be edited through the web interface by the list owner. ---- CategoryNeedsWork