From d04f5b6dc88f899021072e718f2c7336367add7a Mon Sep 17 00:00:00 2001 From: Abhilash Raj Date: Wed, 5 Apr 2017 00:32:34 -0700 Subject: [PATCH] Add sane mailman core configuration. - Add configuration for exim to work with mailman core. - Add configuration to enable hyperkitty in mailman core. - Add configuration to enable mailman_hyperkitty plugin. - Add mailman_hyperkitty plugin and ipython in the core container. --- core/Dockerfile | 3 ++- core/assets/mailman-hyperkitty.cfg | 9 +++++++ core/assets/mailman.cfg | 43 +++++++++++++++++------------- 3 files changed, 36 insertions(+), 19 deletions(-) create mode 100644 core/assets/mailman-hyperkitty.cfg diff --git a/core/Dockerfile b/core/Dockerfile index 39bbdb2..80d13a0 100644 --- a/core/Dockerfile +++ b/core/Dockerfile @@ -7,7 +7,8 @@ ENV DEBIAN_FRONTEND=noninteractive # from the Gitlab. RUN apt-get update && apt-get install -y postgresql-client postfix \ && pip install git+https://gitlab.com/mailman/mailman.git \ - psycopg2 + git+https://gitlab.com/mailman/mailman-hyperkitty.git \ + psycopg2 ipython ADD assets/run.sh /opt/run.sh diff --git a/core/assets/mailman-hyperkitty.cfg b/core/assets/mailman-hyperkitty.cfg new file mode 100644 index 0000000..ce9f0de --- /dev/null +++ b/core/assets/mailman-hyperkitty.cfg @@ -0,0 +1,9 @@ +[general] +# This is your HyperKitty installation, preferably on the localhost. This +# address will be used by Mailman to forward incoming emails to HyperKitty +# for archiving. It does not need to be publicly available, in fact it's +# better if it is not. +base_url: http://mailman-web:8000/hyperkitty/ +# Shared API key, must be the identical to the value in HyperKitty's +# settings. +api_key: ASmallAPIKey diff --git a/core/assets/mailman.cfg b/core/assets/mailman.cfg index 936a2fe..8115aec 100644 --- a/core/assets/mailman.cfg +++ b/core/assets/mailman.cfg @@ -1,28 +1,35 @@ -# [devmode] -# enabled: yes -# testing: yes -# recipient: you@yourdomain.com - -[webservice] -hostname: 0.0.0.0 - - [mta] -smtp_port: 9025 -lmtp_port: 9024 -incoming: mailman.testing.mta.FakeMTA +incoming: mailman.mta.exim4.LMTP +outgoing: mailman.mta.deliver.deliver +lmtp_host: mailman-core +lmtp_port: 8024 +smtp_host: 172.19.199.1 +smtp_port: 25 +configuration: python:mailman.config.exim4 -[archiver.mhonarc] -enable: yes +# [archiver.mhonarc] +# enable: yes -[archiver.mail_archive] -enable: yes +# [archiver.mail_archive] +# enable: yes -[archiver.prototype] -enable: yes +# [archiver.prototype] +# enable: yes [runner.retry] sleep_time: 10s [shell] use_ipython: yes + +[webservice] +hostname: mailman-core + +[archiver.hyperkitty] +class: mailman_hyperkitty.Archiver +enable: yes +configuration: /opt/mailman/mailman-hyperkitty.cfg + +[database] +class: mailman.database.postgresql.PostgreSQLDatabase +url: postgres://mailman:mailmanpass@database/mailmandb