diff --git a/Dockerfile b/Dockerfile index 7e819097..15b23283 100644 --- a/Dockerfile +++ b/Dockerfile @@ -193,7 +193,7 @@ RUN curl -s https://letsencrypt.org/certs/lets-encrypt-x3-cross-signed.pem > /et COPY ./target/bin /usr/local/bin # Start-mailserver script -COPY ./target/check_for_changes.sh ./target/start-mailserver.sh ./target/fail2ban-wrapper.sh ./target/postfix-wrapper.sh ./target/docker-configomat/configomat.sh /usr/local/bin/ +COPY ./target/check-for-changes.sh ./target/start-mailserver.sh ./target/fail2ban-wrapper.sh ./target/postfix-wrapper.sh ./target/docker-configomat/configomat.sh /usr/local/bin/ RUN chmod +x /usr/local/bin/* # Configure supervisor diff --git a/Makefile b/Makefile index cb2150d2..b68b3f63 100644 --- a/Makefile +++ b/Makefile @@ -171,7 +171,7 @@ fixtures: docker cp "`pwd`/test/config/sieve/dovecot.sieve" mail:/var/mail/localhost.localdomain/user1/.dovecot.sieve docker exec mail /bin/sh -c "maildirmake.dovecot /var/mail/localhost.localdomain/user1/.INBOX.spam" docker exec mail /bin/sh -c "chown 5000:5000 -R /var/mail/localhost.localdomain/user1/.INBOX.spam" - sleep 20 + sleep 30 # Sending test mails docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/amavis-spam.txt" docker exec mail /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/amavis-virus.txt" @@ -194,7 +194,7 @@ fixtures: docker exec mail_override_hostname /bin/sh -c "nc 0.0.0.0 25 < /tmp/docker-mailserver-test/email-templates/existing-user1.txt" # Wait for mails to be analyzed - sleep 75 + sleep 80 tests: # Start tests diff --git a/target/check_for_changes.sh b/target/check-for-changes.sh similarity index 92% rename from target/check_for_changes.sh rename to target/check-for-changes.sh index c3245eec..a42df40e 100755 --- a/target/check_for_changes.sh +++ b/target/check-for-changes.sh @@ -1,19 +1,22 @@ #! /bin/bash +# create date for log output +log_date=$(date +"%Y-%m-%d %H:%M:%S ") # Prevent a start too early sleep 5 +echo "${log_date} Start check-for-changes script." # change directory cd /tmp/docker-mailserver # Check postfix-accounts.cf exist else break if [ ! -f postfix-accounts.cf ]; then - echo 'postfix-accounts.cf is missing! This should not run! Exit!' + echo "${log_date} postfix-accounts.cf is missing! This should not run! Exit!" exit fi # Update / generate after start -echo 'Makeing new chksum' +echo "${log_date} Makeing new checksum file." if [ -f postfix-virtual.cf ]; then sha512sum --tag postfix-accounts.cf --tag postfix-virtual.cf > chksum else @@ -22,6 +25,9 @@ fi # Run forever while true; do +# recreate logdate +log_date=$(date +"%Y-%m-%d %H:%M:%S ") + # Get chksum and check it. chksum=$(sha512sum -c chksum) resu_acc=${chksum:21:2} @@ -32,7 +38,7 @@ else fi if ! [ $resu_acc = "OK" ] || ! [ $resu_vir = "OK" ]; then - echo "CHANGE DETECT" + echo "${log_date} Change detected" #regen postfix accounts. echo -n > /etc/postfix/vmailbox echo -n > /etc/dovecot/userdb @@ -117,7 +123,7 @@ if ! [ $resu_acc = "OK" ] || ! [ $resu_vir = "OK" ]; then supervisorctl restart dovecot fi - echo 'Update chksum' + echo "${log_date} Update checksum" if [ -f postfix-virtual.cf ]; then sha512sum --tag postfix-accounts.cf --tag postfix-virtual.cf > chksum else diff --git a/target/supervisor/conf.d/supervisor-app.conf b/target/supervisor/conf.d/supervisor-app.conf index c768ba4b..86eb6c99 100644 --- a/target/supervisor/conf.d/supervisor-app.conf +++ b/target/supervisor/conf.d/supervisor-app.conf @@ -120,4 +120,4 @@ autostart=false autorestart=true stdout_logfile=/var/log/supervisor/%(program_name)s.log stderr_logfile=/var/log/supervisor/%(program_name)s.log -command=/usr/local/bin/check_for_changes.sh +command=/usr/local/bin/check-for-changes.sh