Syncing config files to a subversion repository automatically

By , 2012-07-18 11:05

Here’s a script I cooked up for syncing my Web server’s config to a subversion repository.

Before running the script, initialize an svn repo at /root/subversion/serveurs-web.

# Path to the previously created SVN repo
# use rsync to copy config files from /etc to svnpath. Allow delete, but don't touch the .svn folder
rsync -auz --delete --exclude=.svn /etc/lighttpd $svnpath/web1/etc/
rsync -auz --delete --exclude=.svn /etc/php5 $svnpath/web1/etc/
#svn status $svnpath
# svn auto delete, add and commit script stolen from
echo "processing files to add..."
svn status $svnpath | grep "^?" | sed -r 's/^\?[ ]+//' | xargs -r svn add
echo "processing files to delete..."
svn status $svnpath | grep "^!" | sed -r 's/^\![ ]+//' | xargs -r svn delete
echo "processing commit..."
svn commit $svnpath -m "automatic commit from $HOSTNAME"
# done!

Leave a Reply


Custom theme by me. Based on Panorama by Themocracy