diff options
author | Tar Committer <tar@ocjtech.us> | 2000-11-19 22:01:05 +0000 |
---|---|---|
committer | Tar Committer <tar@ocjtech.us> | 2000-11-19 22:01:05 +0000 |
commit | 1651adc35224e149715bd85af4ba108c5ee184bc (patch) | |
tree | f83b6af44ffb10f2c042b822b2f3469582a129ca /bin/do-diffs.in | |
parent | 3861ba4cf180eb01fd98a16f4502702ab217e56f (diff) | |
download | rancid-1651adc35224e149715bd85af4ba108c5ee184bc.tar.gz rancid-1651adc35224e149715bd85af4ba108c5ee184bc.tar.xz rancid-1651adc35224e149715bd85af4ba108c5ee184bc.zip |
Imported from rancid-2.0.tar.gz.rancid-2.0
Diffstat (limited to 'bin/do-diffs.in')
-rwxr-xr-x | bin/do-diffs.in | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/bin/do-diffs.in b/bin/do-diffs.in new file mode 100755 index 0000000..4a310ef --- /dev/null +++ b/bin/do-diffs.in @@ -0,0 +1,60 @@ +#!/bin/sh +## +# do diffs for each of the diff groups ($LIST_OF_GROUPS) from <BASEDIR>/bin/env +## + +ENVFILE="`dirname $0`/env" + +. $ENVFILE + +if [ $# -ge 1 ] ; then + LIST_OF_GROUPS="$*"; export LIST_OF_GROUPS +elif [ "$LIST_OF_GROUPS" = "" ] ; then + echo "LIST_OF_GROUPS is empty in $ENVFILE" + exit 1 +fi + +if [ ! -d $BASEDIR/logs ] ; then + mkdir $BASEDIR/logs +fi + +for GROUP in $LIST_OF_GROUPS +do + + LOCKFILE=$TMPDIR/.$GROUP.run.lock + + ( + echo starting: `date` + echo + + if [ -f $LOCKFILE ] + then + echo hourly config diffs failed: $LOCKFILE exists + /bin/ls -l $LOCKFILE + + # Send email if the lock file is old. + if [ "X$LOCKTIME" = "X" ] ; then + LOCKTIME=4 + fi + @PERLV_PATH@ -e "\$t = (stat(\"$LOCKFILE\"))[9]; print \"OLD\\n\" if (time() - \$t >= $LOCKTIME*60*60);" > $TMPDIR/.$GROUP.old + if [ -s $TMPDIR/.$GROUP.old ] + then + ( + cat <<END +rancid $GROUP hung on `hostname`? Old lockfile still exists: +`/bin/ls -l $LOCKFILE` +END + ) | Mail -s "rancid hung - $GROUP" rancid-admin-$GROUP + fi + rm -f $TMPDIR/.$GROUP.old + + else + /usr/bin/touch $LOCKFILE + control_rancid $GROUP + /bin/rm -f $LOCKFILE + fi + + echo + echo ending: `date` + ) >$BASEDIR/logs/$GROUP.`date +%Y%m%d.%H%M%S` 2>&1 +done |