source /usr/local/lib/err
-pre="${0##*/}:"
+script_name="${BASH_SOURCE[0]}"
+script_name="${script_name##*/}"
+pre="${SSH_CLIENT:+$HOSTNAME} $script_name:"
m() { printf "$pre %s\n" "$*"; "$@"; }
e() { printf "$pre %s\n" "$*"; }
err() { echo "[$(date +'%Y-%m-%d %H:%M:%S%z')]: $0: $*" >&2; }
if [[ $1 ]]; then
new_host=$1
if [[ $new_host == localhost ]]; then
+ mailhost_p=1
new_host=$HOSTNAME
+ else
+ mailhost_p=0
+ fi
+
+ # https://www.robustperception.io/how-to-have-labels-for-machine-roles
+ dir=/var/lib/prometheus/node-exporter
+ if [[ -e $dir ]]; then
+ cat > $dir/mailhost.prom <<EOF
+host_role{role="mailhost"} $mailhost_p
+EOF
fi
+
m sed -ri "s/MAIL_HOST=.*/MAIL_HOST=$new_host/" /a/bin/bash_unpublished/source-state
fi
source /a/bin/bash_unpublished/source-state
+# fixing up a bad state that servers got in.
+if [[ -e /dev/shm/iank-status ]]; then
+ chown iank.iank /dev/shm/iank-status
+fi
+
+
+if [[ $HOSTNAME == "$MAIL_HOST" || $HOSTNAME == kd ]]; then
+ m systemctl --now enable btrbk.timer
+else
+ m systemctl --now disable btrbk.timer
+fi
+
if dpkg -s rss2email &>/dev/null; then
if [[ $HOSTNAME == "$MAIL_HOST" ]]; then
# arbtt disabled for now
#DISPLAY=:0 arbtt-capture --sample-rate=10 &
m systemctl --now enable rss2email.timer
- # off is in mail-setup. no reason for this to be in the rss2email block.
- m systemctl --now enable btrbk.timer
else
- m systemctl --now disable btrbk.timer
+ files=(/sysd-mail-once/btrbk*)
+ if (( ${#files[@]} )); then
+ rm -f ${files[@]}
+ fi
m systemctl stop rss2email.service
m systemctl --now disable rss2email.timer