Bonjour,
mailman2discourse is a command line tool to import a mailman2
configuration (as found in the config.pck
file) into a discourse category available on PyPI. A user is created for each member of the mailing list and they are notified when a new message is posted to the category (unless their mailman2 option was to never receive any mail). The moderators of a private mailing list become members of a discourse group who can review every new post. If the archives of the mailing list are not public, the discourse category is only visible to a discourse group mimicing the mailman2 membership list.
Install
$ pipenv install mailman2discourse
Usage
Requirements:
- API Key (from
/admin/api/keys/new
) with aUser Level
ofAll Users
- An admin user (for instance
admin
) - An mbox importer container with
DISCOURSE_MAX_ADMIN_API_REQS_PER_KEY_PER_MINUTE: 60000000
DISCOURSE_MAX_REQS_PER_IP_MODE: none
- Not including - “templates/web.ratelimited.template.yml”
- The
config.pck
file of the mailman2 mailing list
To import the listname@example.com
mailman2 mailing list:
$ mailman2discourse --url http://172.19.0.2 --api-key APIKEY --api-user admin \
--mailman-config config.pck \
--list listname --domain example.com
The import is idempotent, meaning it is safe to run it multiple times, for instance if it was interrupted or when the config.pck
file is updated.
The content of the archives can then be imported.
Archive import
The mailing list archives can be imported using the mbox
importer. The .mbox
and .mbox.gz
must be placed in a directory that has the
same name as the category created by mailman2discourse
.
Bug reports
The best place to report problems is the issue tracker but posting on this topic is also fine.