Posts Tagged ‘trac’

Project Creation

Sunday, October 5th, 2008

After making a few tracs and subversion repos by hand and having to do all the little things that need setting up to make things run smoothly (remembering to give svn trunk/tags/branches directories, setting up trac authentication, etc.), I decided to make a little shell script to do most of it for me.

The script I wrote takes a name as its argument and makes a trac and a repository using that name and makes a linked pair with all the bits set the way I need them in my environment for basic functionality. The repository is accessible to anyone in group dev, and I am the only admin on the trac.

if [ $# != 1 ]; then
    echo "Usage: $0 <project name>"
    exit 1
echo "About to create svn/trac for project $PROJ."
echo "    svn: $SVNPATH"
echo "    trac: $TRACPATH"
echo "Press Ctrl-C to abort."
sleep 5
svnadmin create $SVNPATH
chown -R root:dev $SVNPATH
chmod -R g+ws $SVNPATH
svn mkdir -m "Directory layout" file://$SVNPATH/trunk file://$SVNPATH/branches file://$SVNPATH/tags
# initenv <projectname> <db> <repostype> <repospath>
trac-admin $TRACPATH initenv $PROJ sqlite:db/trac.db svn $SVNPATH
chmod g+w $TRACPATH/db
chmod g+w $TRACPATH/db/trac.db
cat >> $TRACPATH/conf/trac.ini <<EOF
acct_mgr.htfile.htpasswdstore = enabled
acct_mgr.web_ui.accountmodule = enabled
acct_mgr.web_ui.loginmodule = enabled
trac.web.auth.loginmodule = disabled
authentication_url =
password_file = /var/trac/htpasswd
password_store = HtPasswdStore
trac-admin $TRACPATH permission add jonathan TRAC_ADMIN

Things I might like to fix someday:

  1. I create duplicate sections in the trac.ini, although it appears to parse them OK.
  2. I’d like it to put a link on the wiki start page with the URL to the repository.

Trac Setup

Monday, July 7th, 2008

Redmine ended up being a bust due to Debian shipping a version of ruby (1.8.7) that is incompatible with Ruby on Rails. Apparently it doesn’t work above 1.8.6. I am impressed that a language’s flagship application gets broken by a point release and no one seems to have anything to say about it other than “don’t use 1.8.7″.

I switched back to Trac despite its limitations because it actually works. Of course, then I had to set up its user authentication, which was a headache of its own. Sometimes I cannot win.

Now, to put things on wikis!