#!/bin/bash
+#
+# THIS FILE IS UNDER PUPPET CONTROL. DON'T EDIT IT HERE.
+# USE: git clone git+ssh://$USER@puppet.debian.org/srv/puppet.debian.org/git/dsa-puppet.git
+#
+
set -e
set -u
## Copyright (c) 2005 David B. Harris <dbharris@eelf.ddts.net>
-## Copyright (c) 2005 Peter Palfrader <peter@palfrader.org>
+## Copyright (c) 2005,2009 Peter Palfrader <peter@palfrader.org>
## This text is released under the "three-clause BSD license".
## The full text of the license is available at the end of this file.
+if [ "$#" != 1 ]; then
+ echo "Usage: $0 <recvconf.files>" >&2
+ exit 1
+fi
+
+FILELIST="$1"
+
printf "\nrecvconf on %s processing:\n" "$(hostname -s)"
-FILELIST=/etc/NOREPLY/recvconf.files
+
+umask 077
temptar="$(mktemp)"
chmod 0600 "$temptar"
IN=0
linenum=0
+file=""
nextfile=""
+
+clear_vars() {
+ perms=""; user=""; group=""; precommand=""; postcommand=""
+}
+clear_vars
+
while read line; do
linenum="$(($linenum + 1))"
## the file, then set a $file to the new value and continue parsing.
[ -n "$file" ] && copy_and_runcommands "$file" "$perms" "$user" "$group" "$precommand" "$postcommand"
file="$(printf "%s" "$line" | sed -e 's/[[:space:]]*file[[:space:]]\+\([^[:space:]#]*\).*/\1/')"
- perms=""; user=""; group=""; precommand=""; postcommand=""
+ clear_vars
continue
fi
exit 1
fi
done < "$tempscript"
+ rm -f -- "$tempoutput"
fi
# Check for any leftover files here; if there are any, exit with an error and print the list
fi
rm -f -- "$temptar"
-rm -f -- "$tempoutput"
rm -f -- "$tempscript"
cd
rm -rf -- "$tempdir"