Recently, I was looking for an bug and issue tracking application which I could install on my workstation. I need it to manage the issues associated with a fairly large and complex project but I'm not sharing development with anyone on this project so no support for multiple users or remote access is required. There are only a few open source issue tracking applications available which are mature enough to support a large project.
Some time ago I started using Trac. Trac is a web application, written in Python, which requires a web server and database server to be installed. It provides Ticket management and Subversion integration. Tickets can be organised into a pseudo-schedule using Milestones. Unfortunately, most of Trac's configuration is achieved on the command line - there is no administrator interface. This is OK for a very rudimentary project, however, it gets very tedious once the number of tickets starts to grow. (On a side note, I was able to find a Mylyn plug-in for Trac which allowed integration with Eclipse which is a bonus.) So, its goodbye to Trac, largely due to its poor administration interface.
Bugzilla sets the standard for Bug tracking applications. It allows a lot of customisation and is very mature at this stage. The only problem with Bugzilla, as with most web applications, is that to install it on your workstation it will require the installation of a lot of dependencies. Bugzilla will require the install of Apache, a mail transfer agent such as Sendmail and some extra Perl modules. Now I for one, don't feel comfortable having a full web server running on my machine just so I can track issues. Its an extra security risk and another application which requires updates. A safer option is to install Bugzilla within a virtual machine using Xen, VirtualBox or VMWare.
So that's the option I went for but, unfortunately, Bugzilla is a dog to install. Getting Bugzilla to play nicely with Apache is not easy. The standard packages (3.2) for both Ubuntu Server 8.10 and Debian 4.0 do not run OK after install. The forums are full of 'help' on which Apache and Bugzilla config files need to be updated. I won't get bogged down in the details - lets just say I wasted way too much time on this. (I haven't tested the install on Mandriva,CentOS or Fedora.) So its goodbye Bugzilla - life is too short.
The next application I looked at is Mantis. Its like a simplified version of Bugzilla. As with the others its a web app and requires Apache and MySQL. The install is less troublesome and it provides all the basic issue and bug tracking functionality required. It still has the downside of needing Apache etc. installed so the virtual machine route seemed a good move.
Then I remembered BitNami! BitNami provide open source application stacks which are self-contained. You can install the stack any place on your machine i.e. you are not installing an rpm with root privileges. Not only do they provide the basic LAMP stack, they also provide a large range of packaged applications. And yes, they package Mantis. The stack installer is excellent and the stack's directory can be moved around on your machine with no problems. To run the web server, there are start-up and shutdown scripts provided.
The advantage of BitNami is that everything: Apache, MySQL, PHPMyAdmin and Mantis, is contained within that one directory. Apache runs with the standard user's privileges and you can add links to the start-up and shutdown scripts to KDE's start and shutdown directories. Hey Presto - you have a locally installed version of Mantis with nearly zero configuration required.
BitNami seems like a great solution to me for developers who want LAMP based applications installed locally on their machine for testing and development. Its great advantage is that each install directory is self contained - you can install and run multiple stacks and configurations and it requires less maintenance than a VM.
Friday, January 30, 2009
Subscribe to:
Posts (Atom)
