Trac, where's the export button?
Martin and I have spoken before about setting up Trac but there didn't seem to be a good reason to do so at the time. Continuing frustration with RT plus a new project based in a vendors Trac application needing to be taken over by us have now given me more reason to setup Trac finally and so it's been done.
Read on for the nitty gritty of what still remains to be done...
The underside needs some work, creating a project at present is partially automated (in terms of creating a repository and database and trac project all at once) but configuring that new trac project isn't done yet, for example I have to manually go in and fix the style of the new project after creation. Also new projects don't know their authz svn module name but at least the default behaviour is to block access because / is not readable to all according to our access policy.
One thing I wanted to do was to take the tickets from one Trac and place them into ours, but I realised I can't easily do that. I can get the ticket data by RSS feed in XML and so I think I might write a Trac-RSS-To-Trac script, although I'll probably get my hands on the raw data in the other Trac instance before I get that far.
I also need to look at what Trac plugins to use, oh and I definitely want to setup Trac so that we can post email into the tracker. After that I can go back to having Subversion update tracker tickets when commits mention issue ticket numbers, I saw some functionality for Trac to do this the other day, contrib Subversion hooks I think.
I was suprised to find that the default Trac templates don't show the "project" name anywhere in the header. For now I'm just centering the project name at the top of each page. Also the project index page is remarkably bland compared to the rest of the Trac pages.
Our Trac is running in CGI mode at the mo because I couldn't get either of FastCGI or Mod Python to work. I need Mod Python 3.2.9 which isn't out yet, and I can't remember why I couldn't get FastCGI to work. For now I just wanted it up and running... I might need to go back to an earlier version of Apache if it becomes a problem though since 2.0.x is bound to be more compatible than 2.2.x.
Comments
You can run trac-admin </path/to/environment> hotcopy to make a safe copy of a Trac environment directory, but you probably already know that.
If you like to have an example to work from for importing tickets, take a look at http://projects.edgewall.com/trac/browser/trunk/contrib/sourceforge2trac.py and http://projects.edgewall.com/trac/browser/trunk/contrib/bugzilla2trac.py
You can get the project name on every page by modifying templates/site_header.cs
You can accept tickets by email with something like http://projects.edgewall.com/trac/browser/trunk/contrib/emailfilter.py or
For closing tickets from Subversion commit messages you can use http://projects.edgewall.com/trac/browser/trunk/contrib/trac-post-commit-hook
Posted by: Thijs van der Vossen | June 16, 2006 9:14 AM
Hi Thijs, yep I knew the things you posted but cheers for keeping me on my toes. I looked at the existing import scripts (bugzilla & co). I need another import script writing too, RT -> Trac. That's gonna be fun.
On your note about site_header.cs the docs say do not modify that, and I can see why, because on upgrade you will have a conflict. Instead I am overriding it in site_css.cs in the project directories, and making site_css.cs a symbolic link to a trac_global_conf/site_css.cs file.
Posted by: Ximon Eighteen | June 16, 2006 11:02 AM
Agreed, doing it globally is probably better.
Posted by: Thijs van der Vossen | June 19, 2006 9:07 AM