Delirios de un Informático

Cómo instalar Bugzilla en Debian Squeeze

Bugzilla es uno de los más veteranos y completos sistemas de seguimiento de errores. Está perdiendo fuerza frente a proyectos como Trac, Redmine o soluciones en la nube como Jira, pero sigue teniendo una cantidad de opciones y una integración con IDEs que ningún otro software tiene, y por eso lo sigo usando para mis proyectos personales.

Está desarrollado en Perl por lo que se necesitará un servidor web con soporte para CGI, así como un servidor de bases de datos (MySQL, PostgreSQL u Oracle) y sus correspondientes librerías de acceso de Perl (para MySQL basta instalar mysql-server y libdbd-mysql-perl). También es necesario instalar unos cuantos módulos Perl, pero personalmente odio llenar el sistema de módulos CPAN, PEAR y similares cuando es posible instalarlos únicamente para el usuario que los necesita. Esto también evita posibles problemas si se actualizan módulos ya instalados con versiones específicas que necesitan otras aplicaciones.

Asumo Apache, la raíz del servidor web en /var/www y www-data como usuario:

su www-data
cd /var/www
wget http://ftp.mozilla.org/pub/mozilla.org/webtools/bugzilla-4.0.2.tar.gz
tar xzvf bugzilla-4.0.2.tar.gz
mv bugzilla-4.0.2 bugzilla && cd bugzilla
./install-module.pl --all
./checksetup.pl
vim localconfig
./checksetup.pl

El comando install-module.pl instalará todos los módulos necesarios en el subdirectorio .cpan de la carpeta del usuario (¡¡159MB!!). El penúltimo comando edita la configuración, donde se deberán añadir los datos de acceso a la base de datos, así como modificar el elemento $webservergroup para que coincida con el usuario que ejecuta el servidor web. El último comando es el que crea las tablas en la base de datos, y en caso de haber algún error lo mostrará claramente (generalmente es la falta de un módulo).

Por último, es necesario añadir al .htaccess unas líneas para que el servidor web interprete los archivos Perl, pero sólo si no se tiene ya configurado para eso:

Options +ExecCGI -MultiViews
AddHandler cgi-script .cgi

Estas instrucciones sirven para cualquiera de las versiones 4.x (y seguramente para la rama 3.x), y pronto saldrá la versión 4.2 con una rama denominada Pretty en la que se implementará una nueva interfaz.