diff --git a/vagrant.d/00-colab b/vagrant.d/00-colab deleted file mode 100755 index d06ddb8..0000000 --- a/vagrant.d/00-colab +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh - -set -e - -# colab -/vagrant/colab/vagrant/bootstrap.sh -sudo -u vagrant -i /vagrant/colab/vagrant/provision.sh diff --git a/vagrant.d/00-colab-generic b/vagrant.d/00-colab-generic new file mode 100755 index 0000000..d06ddb8 --- /dev/null +++ b/vagrant.d/00-colab-generic @@ -0,0 +1,7 @@ +#!/bin/sh + +set -e + +# colab +/vagrant/colab/vagrant/bootstrap.sh +sudo -u vagrant -i /vagrant/colab/vagrant/provision.sh diff --git a/vagrant.d/10-mailman-debian b/vagrant.d/10-mailman-debian new file mode 100755 index 0000000..d6df5b5 --- /dev/null +++ b/vagrant.d/10-mailman-debian @@ -0,0 +1,98 @@ +#!/bin/sh + +set -e + +export DEBIAN_FRONTEND=noninteractive + +if [ ! -f /etc/apt/sources.list.d/mailman-api.list ]; then + cat > /etc/apt/sources.list.d/mailman-api.list < /etc/default/mailman-api <> /etc/colab/settings.yaml +fi + +################################################################# +# mailman configuration +################################################################# + +mailman_config() { + local key="$1" + local value="$2" + local conffile=/etc/mailman/mm_cfg.py + if grep -q "^$key\s*=" $conffile; then + sed -i -e "s/^$key\s*=.*/$key = $value/" $conffile + else + echo "$key = $value" >> $conffile + fi +} + +mailman_config DEFAULT_EMAIL_HOST "'$LISTS_DOMAIN'" +mailman_config MTA None +mailman_config POSTFIX_STYLE_VIRTUAL_DOMAINS "['$LISTS_DOMAIN']" +mailman_config DEB_LISTMASTER "'vagrant@localhost.localdomain'" + +# create some sample lists +for list in list01 list02 list03; do + if list_lists --bare | grep "$list"; then + echo "$list already exists ..." + else + newlist "$list" vagrant@localhost.localdomain "pass-$list" + echo 'vagrant@localhost.localdomain' | add_members -r - "$list" + fi +done + +################################################################# +# postfix configuration +################################################################# +postconf relay_domains="$LISTS_DOMAIN" +postconf transport_maps=hash:/etc/postfix/transport +echo "$LISTS_DOMAIN mailman:" > /etc/postfix/transport +postmap /etc/postfix/transport +service postfix restart diff --git a/vagrant.sh b/vagrant.sh index 7cc3380..346ed00 100755 --- a/vagrant.sh +++ b/vagrant.sh @@ -2,4 +2,12 @@ set -e -run-parts --exit-on-error /vagrant/vagrant.d +if [ -x /usr/bin/apt-get ]; then + regex='debian|generic' +fi + +if [ -x /usr/bin/yum ]; then + regex='centos|generic' +fi + +run-parts --exit-on-error --regex="$regex" /vagrant/vagrant.d -- libgit2 0.21.2