diff --git a/build/run/docker-entrypoint/init.d/50-cron.sh b/build/run/docker-entrypoint/init.d/50-cron.sh index a215858..dfe58b2 100755 --- a/build/run/docker-entrypoint/init.d/50-cron.sh +++ b/build/run/docker-entrypoint/init.d/50-cron.sh @@ -24,21 +24,6 @@ do sleep 7d done & -# Notify if rejected emails were found -while true -do - bash -c 'tail -n +0 --pid=$$ -f /var/log/mail/maillog* | grep --line-buffered -F -v -f /var/log/mail/reject.log | { sed "/NOQUEUE: reject/q" && kill $$ ;}' - echo "$(grep "NOQUEUE: reject" /var/log/mail/maillog* | grep -F -v -f /var/log/mail/reject.log)" >>/var/log/mail/reject.log - cat <<- mail | sendmail reject@${MYVEMAIL_DOMAIN} - From: reject@${MYVEMAIL_DOMAIN} - To: reject@${MYVEMAIL_DOMAIN} - Subject: Rejected email found - - $(tail -n 1 /var/log/mail/reject.log) - mail -done & - - # # Refresh ssl keys daily # # https://www.golinuxcloud.com/renew-self-signed-certificate-openssl/ # while true diff --git a/build/run/docker-entrypoint/init.d/70-reject.sh b/build/run/docker-entrypoint/init.d/70-reject.sh new file mode 100755 index 0000000..1db780e --- /dev/null +++ b/build/run/docker-entrypoint/init.d/70-reject.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +# Notify if rejected emails were found +function monitor-rejects +{ + while true + do + bash -c 'tail -n +0 --pid=$$ -f /var/log/mail/maillog* | grep --line-buffered -F -v -f /var/log/mail/reject.log | { sed "/NOQUEUE: reject/q" && kill $$ ;}' + local reject="$(grep "NOQUEUE: reject" /var/log/mail/maillog* | grep -F -v -f /var/log/mail/reject.log)" + echo ${reject} >>/var/log/mail/reject.log + cat <<- mail | sendmail reject@${MYVEMAIL_DOMAIN} + From: reject@${MYVEMAIL_DOMAIN} + To: reject@${MYVEMAIL_DOMAIN} + Subject: Rejected email found + + ${reject} + mail + done +} + +monitor-rejects &