Backup Script for SVN and Trac |
![]() |
| Posted by Sleazy D (SleazyD) on Sep 03 2008 at 10:03 AM |
| Geekiness >> |
#!/bin/bash
# Edit these to modify your directory paths
BACKUP_DIR='/backup'
SVN_DIR='/var/svn'
TRAC_DIR='/var/trac'
# End Edits
today=`date +%Y%m%d`
# Dump all the Trac repos
for d in `ls $TRAC_DIR`
do
if [ -r $TRAC_DIR/$d/VERSION ]; then
echo -n "Dumping trac for $d..."
trac-admin $TRAC_DIR/$d hotcopy $BACKUP_DIR/$d.$today >/dev/null && \
tar cjf $BACKUP_DIR/$d-$today-trac.tar.bz2 -C $BACKUP_DIR $d.$today \
&& rm -rf $BACKUP_DIR/$d.$today
if [ $? -ne 0 ]; then
echo "Trac Dump failed on $d" 1&>2
else
echo "Done"
fi
fi
done
#Dump All SVN
for d in `ls $SVN_DIR`
do
if [ -d $SVN_DIR/$d/conf ]; then
echo -n "Dumping svn for $d..."
svnadmin dump $SVN_DIR/$d 2>/dev/null | \
bzip2 > $BACKUP_DIR/$d-$today.bz2
if [ $? -ne 0 ]
then
echo "SVN Dump failed on $d" 1&>2
else
echo "Done"
fi
fi
done
tmpwatch -m 336 /backup
Back