5193 |
14 Dec 18 |
nicklas |
#!/bin/sh |
5193 |
14 Dec 18 |
nicklas |
2 |
# |
5193 |
14 Dec 18 |
nicklas |
# Usage: ./rsync.sh [PROJECTARCHIVE] [RELEASEPATH] |
5193 |
14 Dec 18 |
nicklas |
# Sync files from PROJECTARCHIVE to RELEASEPATH |
5193 |
14 Dec 18 |
nicklas |
# A PROJECTARCHIVE location must be specified and should point |
5193 |
14 Dec 18 |
nicklas |
# to the root directory of the project archive. The default value |
5193 |
14 Dec 18 |
nicklas |
# is taken from the ProjectArchive item in BASE. |
5193 |
14 Dec 18 |
nicklas |
# The current directory is the default RELEASEPATH directory |
5193 |
14 Dec 18 |
nicklas |
9 |
# |
5193 |
14 Dec 18 |
nicklas |
10 |
<<RELEASEINFO>> |
5193 |
14 Dec 18 |
nicklas |
11 |
|
5193 |
14 Dec 18 |
nicklas |
12 |
set -e |
5193 |
14 Dec 18 |
nicklas |
13 |
|
5193 |
14 Dec 18 |
nicklas |
14 |
PROJECTARCHIVE=${1-<<DEFAULTPROJECTARCHIVE>>} |
5193 |
14 Dec 18 |
nicklas |
15 |
RELEASEPATH=${2-.} |
5193 |
14 Dec 18 |
nicklas |
16 |
|
5193 |
14 Dec 18 |
nicklas |
17 |
RSYNCOPTIONS="<<RSYNCOPTIONS>>" |
5193 |
14 Dec 18 |
nicklas |
18 |
NUMFILES=<<NUMFILES>> |
5193 |
14 Dec 18 |
nicklas |
19 |
NSYNCED=0 |
5193 |
14 Dec 18 |
nicklas |
20 |
|
5193 |
14 Dec 18 |
nicklas |
21 |
echo "Syncing ${NUMFILES} files from '${PROJECTARCHIVE}' to '${RELEASEPATH}'" |
5193 |
14 Dec 18 |
nicklas |
22 |
|
5193 |
14 Dec 18 |
nicklas |
# Syncs a single file from PROJECTARCHIVE to RELEASEPATH |
5193 |
14 Dec 18 |
nicklas |
# $1 = The source file |
5193 |
14 Dec 18 |
nicklas |
# $2 = The destination file |
5193 |
14 Dec 18 |
nicklas |
26 |
function syncFile { |
5193 |
14 Dec 18 |
nicklas |
27 |
NSYNCED=$(( ${NSYNCED} + 1 )) |
5248 |
18 Jan 19 |
nicklas |
28 |
echo "[${NSYNCED}/${NUMFILES}] ${RELEASEPATH}$2" |
5196 |
14 Dec 18 |
nicklas |
29 |
rsync ${RSYNCOPTIONS} ${PROJECTARCHIVE}$1 ${RELEASEPATH}$2 |
5193 |
14 Dec 18 |
nicklas |
30 |
} |
5193 |
14 Dec 18 |
nicklas |
31 |
|
5193 |
14 Dec 18 |
nicklas |
32 |
<<SCRIPT>> |
5193 |
14 Dec 18 |
nicklas |
33 |
|
5193 |
14 Dec 18 |
nicklas |
34 |
echo Done: ${NSYNCED} files have been synced |