fi
}
pr() {
- if [[ -e /var/lib/prometheus/node-exporter ]]; then
+ if $doprom && [[ -e /var/lib/prometheus/node-exporter ]]; then
cat >>/var/lib/prometheus/node-exporter/mailtest-check.prom.$$
fi
}
# TODO, get je to deliver the local mailbox: /m/md/INBOX
# dovecot appears to setup, i can t be sure.
+source /a/bin/bash_unpublished/source-state
+doprom=false
+case $HOSTNAME in
+ $MAIL_HOST|bk|je)
+ doprom=true
+ ;;
+ *)
+ rm -f /var/lib/prometheus/node-exporter/mailtest-check.prom*
+ ;;
+esac
main() {
froms=(ian@iankelling.org z@zroe.org testignore@je.b8.nz iank@gnu.org)
;;
je)
- froms=(ian@iankelling.org z@zroe.org testignore@expertpathologyreview.com testignore@amnimal.ninja)
+ froms=(ian@iankelling.org z@zroe.org iank@gnu.org testignore@amnimal.ninja)
folders=(/m/md/je.b8.nz/testignore)
;;
*)
# servers.
# example line that sed is parsing:
# (-0.1 / 5.0 requ) DKIM_SIGNED=0.1,DKIM_VALID=-0.1,DKIM_VALID_AU=-0.1,SPF_HELO_PASS=-0.001,SPF_PASS=-0.001,TVD_SPACE_RATIO=0.001 autolearn=_AUTOLEARN
- raw_results="$($spamcpre sudo -u Debian-exim spamassassin -t --cf='score PYZOR_CHECK 0' <"$latest" | tail -n2 | head -n1 | sed -r 's/^\([^)]*\) *//;s/=[^, ]*([, ]|$)/ /g')"
+ resultfile=$(mktemp)
+ $spamcpre sudo -u Debian-exim spamassassin -t --cf='score PYZOR_CHECK 0' <"$latest" &>$resultfile
+
+ raw_results="$(tail $resultfile | grep -A1 -Fx /usr/local/bin/send-test-forward | tail -n1 | sed -r 's/^\([^)]*\) *//;s/=[^, ]*([, ]|$)/ /g')"
for r in $raw_results; do
case $r in
# got this in an update 2022-01. dun care
fi
done
if (( ${#results[@]} || ${#missing[@]} )); then
- printf "$HOSTNAME spamtest %s/%s\n" "$latest"
+ printf "$HOSTNAME spamtest %s\n" "$latest"
if (( ${#results[@]} )); then
printf "unexpected %s" "${!results[*]} "
fi
printf "missing %s" "${missing[*]}"
fi
echo # ends our printf string buildup
-
- if $int; then
- echo mailtest-check: cat $latest:
- cat $latest
- echo mailtest-check: end of cat
- echo "$(tput setaf 5 2>/dev/null ||:)█$(tput sgr0 2>/dev/null||:)%.0s" $(eval echo "{1..${COLUMNS:-60}}")
- fi
+ cat $resultfile
+ echo mailtest-check: end of spam debug results
+
+ # less verbose debug output, commented since I might want it another time.
+ # if $int; then
+ # echo mailtest-check: cat $latest:
+ # cat $latest
+ # echo mailtest-check: end of cat
+ # echo "$(tput setaf 5 2>/dev/null ||:)█$(tput sgr0 2>/dev/null||:)%.0s" $(eval echo "{1..${COLUMNS:-60}}")
+ #fi
fi
+ rm -f $resultfile
fi # if spamdpid
fi # if $slow