chiark / gitweb /
REORG Delete everything that's not innduct or build system or changed for innduct
[innduct.git] / backends / actsyncd.in
diff --git a/backends/actsyncd.in b/backends/actsyncd.in
deleted file mode 100644 (file)
index a88f25d..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-#! /bin/sh
-# fixscript will replace this line with code to load innshellvars
-
-# @(#) $Id: actsyncd.in 6490 2003-10-18 05:49:04Z rra $
-# @(#) Under RCS control in /usr/local/news/src/inn/local/RCS/actsyncd.sh,v
-#
-# actsyncd - actsync daemon
-#
-# usage:
-#      actsyncd [-x] config_file [debug_level [debug_outfmt]]
-#
-#      -x              xexec instead of reload
-#      config_file     name of file used to determine how to run actsync
-#      debug_level     force no action and use -v debug_level
-#      debug_outfmt    change -o a1 output to -o debug_outfmt for debug
-
-# By: Landon Curt Noll         chongo@toad.com         (chongo was here /\../\)
-#
-# Copyright (c) Landon Curt Noll, 1993.
-# All rights reserved.
-#
-# Permission to use and modify is hereby granted so long as this 
-# notice remains.  Use at your own risk.  No warranty is implied.
-
-# preset vars
-#
-
-# Our lock file
-LOCK="${LOCKS}/LOCK.actsyncd"
-# where actsync is located
-ACTSYNC="${PATHBIN}/actsync"
-# exit value of actsync if unable to get an active file
-NOSYNC=127
-
-# parse args
-#
-if [ $# -gt 1 ]; then
-    case $1 in
-    -x|-r) shift ;;     # no longer relevant
-    esac
-fi
-case $# in
-    1) cfg="$1"; DEBUG=; DEBUG_FMT=; ;;
-    2) cfg="$1"; DEBUG="$2"; DEBUG_FMT=; ;;
-    3) cfg="$1"; DEBUG="$2"; DEBUG_FMT="$3"; ;;
-    *) echo "usage: $0 [-x] config_file [debug_level [debug_outfmt]]" 1>&2;
-       exit 1 ;;
-esac
-if [ ! -s "$cfg" ]; then
-    echo "$0: config_file not found or empty: $ign" 1>&2
-    exit 2
-fi
-
-# parse config_file
-#
-host="`sed -n -e 's/^host=[    ]*//p' $cfg | tail -1`"
-if [ -z "$host" ]; then
-    echo "$0: no host specified in $cfg" 1>&2
-    exit 3
-fi
-flags="`sed -n -e 's/^flags=[  ]*//p' $cfg | tail -1`"
-if [ -z "$flags" ]; then
-    echo "$0: no flags specified in $cfg" 1>&2
-    exit 4
-fi
-ign="`sed -n -e 's/^ignore_file=[      ]*//p' $cfg | tail -1`"
-if [ -z "$ign" ]; then
-    echo "$0: no ignore file specified in $cfg" 1>&2
-    exit 5
-fi
-ftp="`sed   -n -e 's/^ftppath=[        ]*//p' $cfg | tail -1`"
-spool="`sed -n -e 's/^spool=[  ]*//p' $cfg | tail -1`"
-if [ -z "$spool" ]; then
-    spool=$SPOOL
-    #echo "$0: no spool directory specified in $cfg" 1>&2
-    #exit 6
-fi
-if [ ! -f "$ign" ]; then
-    ign="${PATHETC}/$ign"
-fi
-if [ ! -s "$ign" ]; then
-    echo "$0: ignore_file not found or empty: $ign" 1>&2
-    exit 7
-fi
-
-# force -o c mode (overrides any -o argument in the command line)
-#
-if [ -z "$DEBUG" ]; then
-
-    # standard actsyncd output mode
-    flags="$flags -o c"
-
-# DEBUG processing, if debug_level was given
-#
-else
-
-    if [ ! -z "$ftp" ]; then
-        echo "$0: cannot use DEBUG mode with ftp (yet)" >&2
-        exit 88;
-    fi
-
-    # force -v level as needed
-    flags="$flags -v $DEBUG"
-
-    # force -o level but reject -o x modes
-    if [ ! -z "$DEBUG_FMT" ]; then
-       case "$DEBUG_FMT" in
-       x*) echo "$0: do not use any of the -o x debug_outfmt modes!" 1>&2;
-           exit 8 ;;
-       *) flags="$flags -o $DEBUG_FMT" ;;
-       esac
-    fi
-
-    # execute actsync directly
-    echo "DEBUG: will execute $ACTSYNC -i $ign $flags $host" 1>&2
-    eval "$ACTSYNC -i $ign $flags $host"
-    status="$?"
-    echo "DEBUG: exit status $status" 1>&2
-    exit "$status"
-fi
-
-# Lock out others
-#
-shlock -p $$ -f "${LOCK}" || {
-    echo "$0: Locked by `cat '${LOCK}'`" 1>&2
-    exit 9
-}
-
-# setup
-#
-origdir=`pwd`
-workdir="${TMPDIR}/actsyncd"
-ctlinndcmds="cc_commands"
-out="sync.msg"
-cleanup="$SED -e 's/^/    /' < $out; cd ${origdir}; rm -rf '$workdir' '$LOCK'"
-trap "eval $cleanup; exit 123" 1 2 3 15
-
-set -e
-rm -rf "$workdir"
-mkdir "$workdir"
-cd "$workdir"
-set +e
-
-rm -f "$out"
-touch "$out"
-chmod 0644 "$out"
-
-# try to sync 
-# 
-# Try to sync off of the host.  If unable to connect/sync then retry
-# up to 9 more times waiting 6 minutes between each try.
-#
-echo "=-= `date` for $host" >>$out 2>&1
-for loop in 1 2 3 4 5 6 7 8 9 10; do
-
-    # get the active file to compare against
-    status=0
-    case $host in
-    /*) cp $host          active; status=$? ;;
-    .*) cp $origdir/$host active; status=$? ;;
-     *)
-        if [ -z "$ftp" ]; then
-           port=`expr "$host" : '.*:\(.*\)'`
-           if [ -n "$port" ]; then
-             port="-p $port"
-             host=`expr "$host" : '\(.*\):.*'`
-           fi
-           echo "getlist -h $host $port" >>$out
-           if getlist -h $host $port > active 2>>$out; then
-             :
-           else
-             status=$NOSYNC
-           fi
-        else
-           echo "$GETFTP ftp://$host/$ftp" >>$out
-           $GETFTP ftp://$host/$ftp >>$out 2>&1
-           status=$?
-           if [ "$status" -ne 0 ]; then
-             status=$NOSYNC
-           else
-             case "$ftp" in
-             *.gz)
-                   echo "$GZIP -d active" >>$out
-                   if $GZIP -d active >>$out 2>&1; then
-                     :
-                   else
-                     status=1
-                   fi
-                   ;;
-             *.Z)
-                   echo "$UNCOMPRESS active" >>$out
-                   if $UNCOMPRESS active >>$out 2>&1; then
-                     :
-                   else
-                     status=1
-                   fi
-                   ;;
-             esac
-           fi
-        fi
-        ;;
-    esac
-
-    if [ "$status" -ne "$NOSYNC" ]; then
-
-       # detect bad status
-       #
-       if [ "$status" -ne 0 ]; then
-           echo "FATAL: `date` for $host exit $status" >>$out
-            eval $cleanup
-           exit "$status"
-       fi
-
-        echo "$ACTSYNC -i $ign $flags ./active" >>$out
-        eval "$ACTSYNC -i $ign $flags ./active >$ctlinndcmds 2>>$out"
-
-        if [ $? -ne 0 ]; then
-            echo "FATAL: `date` for $host actsync balked" >>$out
-            eval $cleanup
-            exit $?
-        fi
-
-        if [ ! -s $ctlinndcmds ]; then
-            echo "No changes need to be made" >>$out
-        else
-            echo "=-= `date` for $host, updating active" >>$out
-            echo "mod-active $ctlinndcmds" >>$out
-            mod-active $ctlinndcmds >>$out 2>&1
-
-            if [ $? -ne 0 ]; then
-                echo "FATAL: `date` for $host mod-active FAILED" >>$out
-                eval $cleanup
-               exit 1
-            fi
-        fi
-
-       # normal exit - all done
-       #
-       echo "=-= `date` for $host, end" >>$out
-        eval $cleanup
-       exit 0
-    fi
-
-    # failed to get the remote active file
-    echo "=-= `date` for $host failed to connect/sync, retrying" >>$out
-
-    # wait 6 minutes
-    #
-    sleep 360
-done
-
-# give up
-#
-echo "FATAL: `date` for $host failed to connect/sync 10 times" >>$out 2>&1
-eval $cleanup
-exit 1