X-Git-Url: https://git.decadent.org.uk/gitweb/?a=blobdiff_plain;f=config%2Fhomedir%2Fsyncdd.sh;h=652c29a08accfee7840f66cfd75622925df16af7;hb=b8690d6b1256a4a95198b874d9eb1aab62a825fb;hp=794f48b5aa8a7adef96fff79d06f181de34087e6;hpb=8077b6b700e6ba266752c76443e1932016f9972e;p=dak.git diff --git a/config/homedir/syncdd.sh b/config/homedir/syncdd.sh index 794f48b5..652c29a0 100755 --- a/config/homedir/syncdd.sh +++ b/config/homedir/syncdd.sh @@ -26,6 +26,43 @@ export LC_ALL=C export SCRIPTVARS=/srv/ftp-master.debian.org/dak/config/debian/vars . $SCRIPTVARS +EXTRA="" + +check_commandline() { + while [ $# -gt 0 ]; do + case "$1" in + sync) + EXTRA="--exclude ftp/" + ;; + pool) + ;; + *) + echo "Unknown option ${1} ignored" + ;; + esac + shift # Check next set of parameters. + done +} + +if [ $# -gt 0 ]; then + ORIGINAL_COMMAND=$* +else + ORIGINAL_COMMAND="" +fi + +SSH_ORIGINAL_COMMAND=${SSH_ORIGINAL_COMMAND:-""} +if [ -n "${SSH_ORIGINAL_COMMAND}" ]; then + set "nothing" "${SSH_ORIGINAL_COMMAND}" + shift + check_commandline $* +fi + +if [ -n "${ORIGINAL_COMMAND}" ]; then + set ${ORIGINAL_COMMAND} + check_commandline $* +fi + + cleanup() { rm -f "${HOME}/sync.lock" } @@ -40,8 +77,8 @@ if lockfile -r3 ${HOME}/sync.lock; then rsync -aH -B8192 \ --exclude backup/*.xz \ --exclude backup/dump* \ - --exclude ftp/ \ - --exclude mirror/ \ + ${EXTRA} \ + --exclude mirror \ --exclude morgue/ \ --exclude=lost+found/ \ --exclude .da-backup.trace \