X-Git-Url: https://iankelling.org/git/?p=distro-setup;a=blobdiff_plain;f=primary-setup;h=df30f294662019352acd32ac79d9251a7f391b87;hp=b8e594cbd93218e522253dbcbef5c8360d2f663f;hb=HEAD;hpb=9c77c557e60d21caceeef1e78e35b35ed968fca9 diff --git a/primary-setup b/primary-setup index b8e594c..5f415c9 100755 --- a/primary-setup +++ b/primary-setup @@ -1,37 +1,54 @@ #!/bin/bash +# I, Ian Kelling, follow the GNU license recommendations at +# https://www.gnu.org/licenses/license-recommendations.en.html. They +# recommend that small programs, < 300 lines, be licensed under the +# Apache License 2.0. This file contains or is part of one or more small +# programs. If a small program grows beyond 300 lines, I plan to switch +# its license to GPL. + +# Copyright 2024 Ian Kelling + +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at + +# http://www.apache.org/licenses/LICENSE-2.0 + +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + # usage $0 [MAIL_HOST] # setup things which involve being the primary host or not -source /usr/local/lib/err +set -e; . /usr/local/lib/bash-bear; set +e script_name="${BASH_SOURCE[0]}" script_name="${script_name##*/}" -pre="${SSH_CLIENT:+$HOSTNAME} $script_name:" +pre="$script_name:${0##*/}:${SSH_CLIENT:+ $HOSTNAME:}" m() { printf "$pre %s\n" "$*"; "$@"; } e() { printf "$pre %s\n" "$*"; } err() { echo "[$(date +'%Y-%m-%d %H:%M:%S%z')]: $0: $*" >&2; } - +# service maybe +serm() { + local service + service="${*: -1}" + if [[ ! -s /etc/systemd/system/$service ]]; then + return 0 + fi + m "$@" +} [[ $EUID == 0 ]] || exec sudo -E "${BASH_SOURCE[0]}" "$@" 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 < $dir/mailhost.prom </dev/null; then rm -f ${files[@]} fi - m systemctl stop rss2email.service - m systemctl --now disable rss2email.timer + serm systemctl stop rss2email.service + serm systemctl --now disable rss2email.timer # arbtt disabled for now # for ((i=0; i<10; i++)); do # killall arbtt-capture || break