diff options
-rwxr-xr-x[-rw-r--r--] | bin/parallel-rsync-repos | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/bin/parallel-rsync-repos b/bin/parallel-rsync-repos index b2429f743b5..b777056c95f 100644..100755 --- a/bin/parallel-rsync-repos +++ b/bin/parallel-rsync-repos @@ -4,6 +4,15 @@ # Example invocation: # find /var/opt/gitlab/git-data/repositories -maxdepth 2 | \ # parallel-rsync-repos /var/opt/gitlab/git-data/repositories /mnt/gitlab/repositories +# +# You can also rsync to a remote destination. +# +# parallel-rsync-repos /var/opt/gitlab/git-data/repositories user@host:/mnt/gitlab/repositories +# +# If you need to pass extra options to rsync, set the RSYNC variable +# +# env RSYNC='rsync --rsh="foo bar"' parallel-rsync-repos /src dest +# SRC=$1 DEST=$2 @@ -17,10 +26,14 @@ if [ -z "$SRC" ] || [ -z "$DEST" ] ; then exit 1 fi +if [ -z "$RSYNC" ] ; then + RSYNC=rsync +fi + if ! cd $SRC ; then echo "cd $SRC failed" exit 1 fi sed "s|$SRC|./|" |\ - parallel -j$JOBS --progress "mkdir -p $DEST/{} && rsync --delete -a {}/. $DEST/{}/" + parallel -j$JOBS --progress "mkdir -p $DEST/{} && $RSYNC --delete -a {}/. $DEST/{}/" |