mostly a bunch of fixes
authorIan Kelling <ian@iankelling.org>
Mon, 17 Jul 2023 07:05:39 +0000 (03:05 -0400)
committerIan Kelling <ian@iankelling.org>
Mon, 17 Jul 2023 07:05:39 +0000 (03:05 -0400)
bitfolk-chroot-install
brc
brc2
check-remote-mailqs
check-stale-alerts
conflink
distro-end
filesystem/usr/local/bin/myupgrade
machine_specific/kd/filesystem/etc/cron.d/kd
mail-setup

index a28efeec9ac9bffcb1f1c89d041a5339089a4561..cbcb47e76c5a78a67a7f35f54e914e5e28c47014 100755 (executable)
@@ -59,10 +59,10 @@ iface eth0 inet6 static
     gateway $ip6::1
     post-up echo 0 > /proc/sys/net/ipv6/conf/default/accept_ra
     post-up echo 0 > /proc/sys/net/ipv6/conf/all/accept_ra
-    post-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/accept_ra
+    post-up echo 0 > /proc/sys/net/ipv6/conf/\$IFACE/accept_ra
     post-up echo 0 > /proc/sys/net/ipv6/conf/default/autoconf
     post-up echo 0 > /proc/sys/net/ipv6/conf/all/autoconf
-    post-up echo 0 > /proc/sys/net/ipv6/conf/$IFACE/autoconf
+    post-up echo 0 > /proc/sys/net/ipv6/conf/\$IFACE/autoconf
 EOF
 
 cat >/etc/fstab <<'EOF'
diff --git a/brc b/brc
index f2793e888dcc334ad8899f1a9656a893abea1550..7dfaefc6a6e2c952d69b2cc47715e20df1efec84 100644 (file)
--- a/brc
+++ b/brc
@@ -1055,6 +1055,10 @@ etail2() {
 }
 ccomp tail etail etail2
 
+# ran into this online, trying it out
+detach() {
+  ( "$@" &>/dev/null & disown )
+}
 
 showkeys() {
   ssh "$@" cat .ssh/authorized_keys{,2}
diff --git a/brc2 b/brc2
index 1be253a6151eab4f2b735a557c67d026c5fa5b73..86512ded8458f407d748f7086795545f209a0d39 100644 (file)
--- a/brc2
+++ b/brc2
@@ -1618,7 +1618,7 @@ lipush() {
   local p a
   # excluding emacs for now
   #p=(/a/opt/{emacs-debian11{,-nox},mu,emacs} /a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
-  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
   a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
   ret=0
   for h in li je bk; do
@@ -1631,14 +1631,14 @@ lipush() {
   return $ret
 }
 bkpush() { # no emacs. for running faster.
-  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
   a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
   ret=0
   m rsync "$@" $a ${p[@]} /p/c/machine_specific/bk root@bk.b8.nz:/ || ret=$?
   return $ret
 }
 jepush() { # no emacs. for running faster.
-  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts})
+  p=(/a/bin /a/exe /a/h /a/c /p/c/machine_specific/vps{,.hosts} /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter)
   a="-ahviSAXPH --specials --devices --delete --relative --exclude-from=/p/c/li-rsync-excludes"
   ret=0
   m rsync "$@" $a ${p[@]} /p/c/machine_specific/je root@je.b8.nz:/ || ret=$?
@@ -2448,7 +2448,7 @@ wghole() {
     e expected 2-3 arg of hostname, ip suffix, and extrahost >&2
     return 1
   fi
-  local host ipsuf umask_orig
+  local host ipsuf umask_orig vpn_allowed
   host=$1
   ipsuf=$2
   if [[ $3 ]]; then
@@ -3634,7 +3634,7 @@ rem() {
   paths="/p/c /b"
   find $paths -not \( -name .svn -prune -o -name .git -prune \
        -o -name .hg -prune -o -name .editor-backups -prune \
-       -o -name .undo-tree-history -prune \) 2>/dev/null | grep -iP --color=auto "$*"
+       -o -name .undo-tree-history -prune \) 2>/dev/null | grep -iP --color=auto "$*" ||:
   rgv -m 5 "$*" $paths ||:
 }
 
index 2e98521d01e1359d2d6284953a9e2992029639fd..fa3dbf8e6e90e18c4063eb6b41a62075bbbcdf6f 100755 (executable)
@@ -11,7 +11,7 @@ shopt -s dotglob
 
 # temp disabled: x2wg kwwg
 # this list duplicated in brc2 ralerts
-for h in bk je li frodo x3wg kdwg sywg; do
+for h in bk je li x3wg kdwg sywg; do
   statedir=/b/bash_unpublished/mailq-state
   statefile=$statedir/$h
   [[ -d $statedir ]] || continue
index 88fa0962823fab41b9dd16757c8cfb6dc7be3cd6..f0d84815121b49fe9730c00609aae9e10398cee8 100755 (executable)
@@ -6,7 +6,15 @@ if [[ ! -e /dev/shm/iank-status ]]; then
 fi
 eval $(< /dev/shm/iank-status)
 
-out=$(find /var/local/cron-errors /home/iank/cron-errors /sysd-mail-once-state -type f)
+dirs=()
+for d in /var/local/cron-errors /home/iank/cron-errors /sysd-mail-once-state; do
+  if [[ -e $d ]]; then
+    dirs+=($d)
+  fi
+done
+if (( ${#dirs[@]} >= 1 )); then
+  out=$(find ${dirs[@]} -type f)
+fi
 if [[ $out ]]; then
   echo HOSTNAME: $HOSTNAME
   printf "%s\n" "$out"
index e20da6e94f743b607aac6a17553591ca569e6f00..18a6ed84f0dc177c85e72ccf0aaa5adc075e93ca 100755 (executable)
--- a/conflink
+++ b/conflink
@@ -114,7 +114,8 @@ common-file-setup() {
       # we dont want t, instead c for checksum.
       # That way we dont set times on directories.
       # -a = -rlptgoD
-      cmd=( s rsync -rclpgoDiSAX --chmod=Dg-s --chown=root:root
+      # -A is acls, implies -p
+      cmd=( s rsync -rclgoDiSAX --chmod=Dg-s --chown=root:root
             --exclude=/etc/dovecot/users
             --exclude='/etc/exim4/passwd*'
             --exclude='/etc/exim4/*.pem'
index 593e91e598b89b510802fcb9f67a5fd3c43bfa67..855f93747c79ce30ccc8f9829cb9b5ae164388c2 100755 (executable)
@@ -619,7 +619,7 @@ case $HOSTNAME in
       dnsb8
     fi
 
-    s /c/roles/prom-export/files/simple/usr/local/bin/fsf-install-node-exporter -l
+    s /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter -l 127.0.0.1:9100
 
     # ex for exporter
     web-conf -p 9101 -f 9100 - apache2 ${HOSTNAME}ex.b8.nz <<'EOF'
@@ -1689,7 +1689,7 @@ sudo gpasswd -a $USER lpadmin # based on ubuntu wiki
 
 m /a/bin/buildscripts/go
 # only needed for rg. cargo takes up 11 gigs, filled up the disk on je.
-#m /a/bin/buildscripts/rust
+m /a/bin/buildscripts/rust
 m /a/bin/buildscripts/misc
 m /a/bin/buildscripts/pithosfly
 #m /a/bin/buildscripts/alacritty
@@ -2007,7 +2007,7 @@ EOF
       ser restart prometheus-alertmanager
     fi
 
-    s /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter -l
+    s /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter -l 127.0.0.1:9100
 
     for ser in prometheus-node-exporter prometheus-alertmanager prometheus; do
       sysd-prom-fail-install $ser
@@ -2015,7 +2015,7 @@ EOF
 
     ;;
   *)
-    s /c/roles/prom-export/files/simple/usr/local/bin/fsf-install-node-exporter
+    s /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter
     ;;
 esac
 
index 7973d670fb707d6817a950cf1996242dbff4daf2..b86e418c64b259a0423754ea8d25c6416c4bdf01 100755 (executable)
@@ -50,7 +50,14 @@ myreboot() {
 
 case $HOSTNAME in
   kd)
-    /a/bin/buildscripts/prometheus
+    /c/roles/prom/files/simple/usr/local/bin/fsf-install-prometheus
+    /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter -l 127.0.0.1
+    ;;
+  li|bk|je)
+    /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter -l 127.0.0.1
+    ;;
+  *)
+    /c/roles/prom_export/files/simple/usr/local/bin/fsf-install-node-exporter
     ;;
 esac
 
index b2c2b45f43040680aa07c98886a4d76e9176dec4..2efa2124ecb1b4b4b7efc30d1b274edbed4e2fe5 100644 (file)
@@ -1,12 +1,11 @@
 SHELL=/bin/bash
 PATH=/usr/bin:/bin:/usr/local/bin:/a/exe:/a/bin/fai
 MAILTO=root
-0 6 * * 1,2,3,4,5 root failmail wrt-setup -y
-45 7 * * 1,2,3,4,5 root failmail wrt-setup -z
-0 9 * * 1,2,3,4,5 root failmail wrt-setup -y
-# old rule, 9:10
-#10 21 * * 1,2,3,4,5 root failmail wrt-setup -z
-0 17 * * 1,2,3,4,5 root failmail wrt-setup -z
+
+## weekdays
+# 0 6 * * 1,2,3,4,5 root failmail wrt-setup -y
+# 45 7 * * 1,2,3,4,5 root failmail wrt-setup -z
+# 0 9 * * 1,2,3,4,5 root failmail wrt-setup -y
 
 # weekends
 #0 6 * * 6,7 root failmail wrt-setup -y
index 8da3a657655ea723f3b715cafa56d1db2f62d421..9dd52598035a2d63792bd069da64ac9e77175849 100755 (executable)
@@ -536,7 +536,7 @@ EOF
 # Aug 02 21:59:27 sy systemd[1]: wg-quick@wgmail.service: Failed with result 'exit-code'.
 # Aug 02 21:59:27 sy systemd[1]: Failed to start WireGuard via wg-quick(8) for wgmail.
 # Aug 02 21:59:47 sy systemd[1]: wg-quick@wgmail.service: Scheduled restart job, restart counter is at 1.
-# Aug 02 21:59:47 sy systemd[1]: Stopped WireGuard via wg-quick(8) for wgmail.
+# Aug 02 21:95:47 sy systemd[1]: Stopped WireGuard via wg-quick(8) for wgmail.
 # Aug 02 21:59:47 sy systemd[1]: Starting WireGuard via wg-quick(8) for wgmail...
 # Aug 02 21:59:47 sy wg-quick[3424]: wg-quick: `wgmail' already exists
 # Aug 02 21:59:47 sy systemd[1]: wg-quick@wgmail.service: Main process exited, code=exited, status=1/FAILURE
@@ -2232,13 +2232,12 @@ if [[ $HOSTNAME == bk ]]; then
   rm composer-setup.php
 
   # based on error when running composer
-  mkdir /var/www/.composer
+  mkdir -p /var/www/.composer
   chown www-data:www-data /var/www/.composer
 
   ### end composer install
 
   rcdirs=(/usr/local/lib/rcexpertpath /usr/local/lib/rcninja)
-  ncdirs=(/var/www/ncninja)
   ncdirs=(/var/www/ncexpertpath /var/www/ncninja)
   # point debian cronjob to our local install, preventing daily cron error
 
@@ -2270,8 +2269,6 @@ if [[ $HOSTNAME == bk ]]; then
     rcdir=${rcdirs[i]}
     rcbase=${rcdir##*/}
     ncdir=${ncdirs[i]}
-    myncdir=/root/${ncdir##*/}
-    mkdir -p $myncdir
 
     # copied from debians cronjob
     u /etc/cron.d/$rcbase <<EOF
@@ -2538,7 +2535,9 @@ EOF
   for ((i=0; i < ${#bkdomains[@]}; i++)); do
     domain=${bkdomains[i]}
     ncdir=${ncdirs[i]}
+    myncdir=/var/local/${ncdir##*/}
     ncbase=${ncdir##*/}
+    mkdir -p $myncdir
     m cd /var/www
     if [[ ! -e $ncdir/index.php ]]; then
       # if we wanted to only install a specific version, use something like
@@ -2558,13 +2557,16 @@ EOF
       m touch $myncdir/done-install
     fi
 
-    # note, strange this happend where updater did not increment the version var,
-    # mine was stuck on 20. I manually updated it.
     m cd $ncdir/config
-    if [[ ! -e $myncdir/config.php-orig ]]; then
-      m cp -a config.php $myncdir/config.php-orig
-    fi
-    cat $myncdir/config.php-orig - >$myncdir/tmp.php <<EOF
+    # if we did this more than once, it would revert the
+    # version number to the original.
+    if [[ ! -e $myncdir/config.php-orig || ! -s config.php ]]; then
+      if [[ -s config.php ]]; then
+        m cp -a config.php $myncdir/config.php-orig
+        # keep the file so it keeps the same permissions.
+        truncate -s0 config.php
+      fi
+      cat $myncdir/config.php-orig - >$myncdir/tmp.php <<EOF
 # https://docs.nextcloud.com/server/19/admin_manual/configuration_server/email_configuration.html
 \$CONFIG["mail_smtpmode"] = "sendmail";
 \$CONFIG["mail_smtphost"] = "127.0.0.1";
@@ -2596,9 +2598,11 @@ fwrite(STDOUT, "<?php\n\\\$CONFIG = ");
 var_export(\$CONFIG);
 fwrite(STDOUT, ";\n");
 EOF
-    e running php $myncdir/tmp.php
-    # note: we leave it around place for debugging
-    php $myncdir/tmp.php >config.php
+      e running php $myncdir/tmp.php
+      # note: we leave it around place for debugging
+      # shellcheck disable=SC2024 # intended
+      sudo -u www-data php $myncdir/tmp.php >config.php
+    fi
     cd $ncdir
     m sudo -u www-data php occ maintenance:update:htaccess
     list=$(sudo -u www-data php $ncdir/occ --output=json_pretty app:list)
@@ -2670,7 +2674,7 @@ cd /var/www/$ncbase
 m php /var/www/$ncbase/updater/updater.phar -n
 # throw a sleep in just because who knows what else is undocumented
 sleep 5
-./occ upgrade
+m php occ upgrade
 EOFOUTER
     chmod +x /usr/local/bin/ncup