Skip to content
Snippets Groups Projects
trac.in 1 KiB
Newer Older
  • Learn to ignore specific revisions
  • # -*- mode: sh; sh-basic-offset: 3; indent-tabs-mode: nil; -*-
    
    #
    # this handler will backup trac environments (based on the svn handler)
    #
    # http://trac.edgewall.com/
    #
    
    getconf src /var/lib/trac
    getconf dest /var/backups/trac
    getconf tmp /var/backups/trac.tmp
    
    cd $src
    for repo in `find . -name VERSION`
    do
    
    micah's avatar
    micah committed
    
    
    micah's avatar
    micah committed
        if [ "$repo" == "." ]
        then 
           repo="" 
        fi
    
        # Just make the parent directory for $tmp/$repo
        parentdir=`dirname $tmp/$repo`
        ret=`mkdir -p $parentdir 2>&1`
    
        code=$?
        if [ "$ret" ]; then
           debug "$ret"
        fi
        if [ $code != 0 ]; then
    
           error "command failed mkdir -p $parentdir"
    
        fi
    
        ret=`trac-admin $src/$repo hotcopy $tmp/$repo 2>&1`
        code=$?
        if [ "$ret" ]; then
           debug "$ret"
        fi
        if [ $code != 0 ]; then
           error "command failed -- trac-admin $src/$repo hotcopy $tmp/$repo"
        fi
    done
    
    
    if [ -d $dest -a -d $tmp ]; then
         rm -rf $dest
    fi
    if [ -d $tmp ]; then
         mv $tmp $dest