X-Git-Url: https://git.hcoop.net/hcoop/domtool2.git/blobdiff_plain/1e47c6ccc9841a3bc8286f0398f8eaf879535279..0c3785870c3ad0ec9e42d6704939b98e707df64a:/scripts/domtool-publish diff --git a/scripts/domtool-publish b/scripts/domtool-publish dissimilarity index 82% index 56b902e..9a7574d 100755 --- a/scripts/domtool-publish +++ b/scripts/domtool-publish @@ -1,30 +1,80 @@ -#!/bin/sh -e - -case $1 in - apache) - /usr/bin/rsync --delete /var/domtool/vhosts/* /etc/apache2/vhosts/ - echo "I would reload Apache now." -# /etc/init.d/apache2 reload - ;; - bind) - /usr/bin/rsync --delete /var/domtool/zones/* /etc/bind/zones/ - /bin/cp /var/domtool/named.conf.local /etc/bind/ - echo "I would reload Bind now." -# /etc/init.d/bind9 reload - ;; - exim) - /bin/cp /var/domtool/aliases /etc/ - /bin/cp /var/domtool/aliases.default /etc/ - /bin/cp /var/domtool/local_domains.cfg /etc/exim4/ - echo "I would reload Exim now." -# /etc/init.d/exim4 reload - ;; - mailman) - /bin/cp /var/domtool/mailman.map /etc/mailman - echo "I would reload Mailman now." -# /etc/init.d/mailman reload - ;; - *) - echo "Usage: domtool-publish [apache|bind|exim|mailman]" - ;; -esac +#!/bin/sh -e + +redo_exim() { + /bin/echo -n "domainlist local_domains = " >/etc/exim4/conf.d/main/10_domtool-domains + /bin/cat /var/domtool/local_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/echo -n "domainlist relay_to_domains = " >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/cat /var/domtool/relay_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/echo -n "domainlist mm_domains = " >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/cat /var/domtool/mailman_domains.cfg >>/etc/exim4/conf.d/main/10_domtool-domains + /bin/echo "" >>/etc/exim4/conf.d/main/10_domtool-domains + /etc/init.d/exim4 reload +} + +case $1 in + apache) + /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache2/vhosts/ + /etc/init.d/apache2 reload + ;; + apache-down) + /etc/init.d/apache2 stop + ;; + apache-undown) + /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache2/vhosts/ + /etc/init.d/apache2 start + ;; + apache1.3) + /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache/vhosts/ + /etc/init.d/apache reload + ;; + apache1.3-down) + /etc/init.d/apache stop + ;; + apache1.3-undown) + /usr/bin/rsync -r --delete /var/domtool/vhosts/ /etc/apache/vhosts/ + /etc/init.d/apache start + ;; + bind) + /usr/bin/rsync -r --delete /var/domtool/zones/ /etc/bind/zones/ + /bin/chown -R bind /etc/bind/zones + /bin/cp /var/domtool/named.conf.local /etc/bind/ + /bin/chown root:bind_config /etc/bind/named.conf.local + /bin/chmod u=rw,g=rw,o=r /etc/bind/named.conf.local + /etc/init.d/bind9 restart + ;; + exim) + /bin/cp /var/domtool/aliases /etc/aliases.hosted + /bin/cp /var/domtool/aliases.default /etc/aliases.wildcard + redo_exim + ;; + mailman) + /bin/echo "HCOOP_VHOSTS = {" >/etc/mailman/vhosts_cfg.py + /bin/cat /var/domtool/mailman.map >>/etc/mailman/vhosts_cfg.py + /bin/echo "}" >>/etc/mailman/vhosts_cfg.py + /etc/init.d/mailman reload + redo_exim + ;; + courier) + /usr/sbin/makeuserdb + /bin/chown -R domtool.domtool /etc/courier/userdb + /bin/cat /etc/courier/userdb/* >/etc/courier/exim + /bin/chmod o-r /etc/courier/exim + /usr/sbin/exim_dbmbuild /etc/courier/exim /etc/courier/exim.dat + /bin/chgrp mail /etc/courier/exim.dat + /bin/chmod o-r /etc/courier/exim.dat + ;; + smtplog) + /bin/grep $2 /var/log/exim4/mainlog + ;; + apache-fixperms) + /bin/chown -R domtool.domtool /var/log/apache2/user + ;; + apache1.3-fixperms) + /bin/chown -R domtool.domtool /var/log/apache/user + ;; + *) + echo "Usage: domtool-publish [apache|bind|courier|exim|mailman|smtplog STRING]" + ;; +esac