# Settings
LOCALREPO='/root/backup/[myapp]/svn_repo'
REMOTEHOST='[myhost]'
REMOTEREPO='/var/www/svn/repos/[myapp]'
REMOTEUSER='[myuser]'
### WARNING: Danger Will Robinson ###
### DO NOT EDIT BELOW THIS LINE ###
LOCALVER=`/usr/bin/svnlook youngest ${LOCALREPO}`
REMOTEVER=`/usr/bin/ssh ${REMOTEUSER}@${REMOTEHOST} /usr/bin/svnlook youngest ${REMOTEREPO}`
echo "Local version is ${LOCALVER}"
echo "Remote version is ${REMOTEVER}"
if [ "$REMOTEVER" -gt "$LOCALVER" ];
then
echo "Remote version is greater than local version"
START=$(echo "${LOCALVER} + 1" | /usr/bin/bc -l)
/usr/bin/ssh ${REMOTEUSER}@${REMOTEHOST} /usr/bin/svnadmin dump --incremental --deltas --revision ${START}:${REMOTEVER} ${REMOTEREPO} | /usr/bin/svnadmin load --ignore-uuid ${LOCALREPO}
else
echo "Both local and remote version have the same data"
fi
--------
Schedule with this cron file:
cat myapp_svn_backup.cron
#!/bin/bash
cd /root/backup/[myapp]/svn_logs
logfilename="subversion_backup_"`eval date +%Y%m%d`".log"
/root/backup/[myapp]/run_svn_backup.sh > $logfilename
Wednesday, January 25, 2012
Subscribe to:
Post Comments (Atom)
0 comments:
Post a Comment