extensions/net.sf.basedb.reggie/trunk/src/net/sf/basedb/reggie/plugins/release/rsync-template.sh

Code
Comments
Other
Rev Date Author Line
5193 14 Dec 18 nicklas 1 #!/bin/sh
5193 14 Dec 18 nicklas 2
5193 14 Dec 18 nicklas 3 # Usage: ./rsync.sh [PROJECTARCHIVE] [RELEASEPATH]
5193 14 Dec 18 nicklas 4 # Sync files from PROJECTARCHIVE to RELEASEPATH
5193 14 Dec 18 nicklas 5 # A PROJECTARCHIVE location must be specified and should point
5193 14 Dec 18 nicklas 6 # to the root directory of the project archive. The default value
5193 14 Dec 18 nicklas 7 # is taken from the ProjectArchive item in BASE.
5193 14 Dec 18 nicklas 8 # 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 23 # Syncs a single file from PROJECTARCHIVE to RELEASEPATH
5193 14 Dec 18 nicklas 24 # $1 = The source file
5193 14 Dec 18 nicklas 25 # $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