ara quien pueda serle de utilidad, estos han sido mis pasos para instalar Bugzilla 3.2.2 en Windows 2003 Server. La versión de perl instalada ha sido la 5.8.6.
Lo primero es tener instalado Perl, que se puede descargar de http://www.activestate.com/.
A continuación descargamos BugZilla desde http://www.bugzilla.org/.
Descomprimos el fichero .tar descargado desde BugZilla en la carpeta desde la que queremos que se ejecute, por ejemplo, c:\bugzilla.
Desde una ventana de Ms-Dos, voy a la carperta de bugzilla y ejecuto:
perl checksetup.pl
Esto nos permitirá saber qué módulos de perl me faltan para poder ejecutar BugZilla.
En mi caso, esta es la salida:
<code>
* This is Bugzilla 3.2.2 on perl 5.8.6
* Running on Win2003 Build 3790 (Service Pack 2)
Checking perl modules…
Checking for CGI.pm (v3.21) found v3.05
Checking for TimeDate (v2.21) not found
Checking for PathTools (v0.84) ok: found v3.01
Checking for DBI (v1.41) not found
Checking for Template-Toolkit (v2.15) not found
Checking for Email-Send (v2.16) not found
Checking for Email-MIME (v1.861) not found
Checking for Email-MIME-Modifier (v1.442) not found
Checking available perl DBD modules…
Checking for DBD-Pg (v1.45) not found
Checking for DBD-mysql (v4.00) not found
Checking for DBD-Oracle (v1.19) not found
The following Perl modules are optional:
Checking for GD (v1.20) not found
Checking for Chart (v1.0) not found
Checking for Template-GD (any) not found
Checking for GDTextUtil (any) not found
Checking for GDGraph (any) not found
Checking for XML-Twig (any) not found
Checking for MIME-tools (v5.406) not found
Checking for libwww-perl (any) ok: found v2.033
Checking for PatchReader (v0.9.4) not found
Checking for PerlMagick (any) not found
Checking for perl-ldap (any) not found
Checking for Authen-SASL (any) not found
Checking for RadiusPerl (any) not found
Checking for SOAP-Lite (any) ok: found v0.55
Checking for HTML-Parser (v3.40) found v3.38
Checking for HTML-Scrubber (any) not found
Checking for Email-MIME-Attachment-Stripper (any) not found
Checking for Email-Reply (any) not found
Checking for mod_perl (v1.999022) not found
* NOTE: You must run any commands listed below as Administrator.
***********************************************************************
* Note For Windows Users *
***********************************************************************
* In order to install the modules listed below, you first have to run *
* the following command as an Administrator: *
* *
* ppm repo add theory58S http://theoryx5.uwinnipeg.ca/ppms
* *
* Then you have to do (also as an Administrator): *
* *
* ppm repo up theory58S *
* *
* Do that last command over and over until you see “theory58S” at the *
* top of the displayed list. *
***********************************************************************
***********************************************************************
* REQUIRED MODULES *
***********************************************************************
* Bugzilla requires you to install some Perl modules which are either *
* missing from your system, or the version on your system is too old. *
* *
* The latest versions of each module can be installed by running the *
* commands below. *
***********************************************************************
COMMANDS:
ppm install CGI.pm
ppm install TimeDate
ppm install DBI
ppm install Template-Toolkit
ppm install Email-Send
ppm install Email-MIME
ppm install Email-MIME-Modifier
***********************************************************************
* DATABASE ACCESS *
***********************************************************************
* In order to access your database, Bugzilla requires that the *
* correct “DBD” module be installed for the database that you are *
* running. *
* *
* Pick and run the correct command below for the database that you *
* plan to use with Bugzilla. *
***********************************************************************
COMMANDS:
PostgreSQL: ppm install DBD-Pg
Minimum version required: 1.45
MySQL: ppm install DBD-mysql
Minimum version required: 4.00
Oracle: ppm install DBD-Oracle
Minimum version required: 1.19
**********************************************************************
* OPTIONAL MODULES *
**********************************************************************
* Certain Perl modules are not required by Bugzilla, but by *
* installing the latest version you gain access to additional *
* features. *
* *
* The optional modules you do not have installed are listed below, *
* with the name of the feature they enable. If you want to install *
* one of these modules, just run the appropriate command in the *
* “COMMANDS TO INSTALL” section. *
**********************************************************************
***********************************************************************
* MODULE NAME * ENABLES FEATURE(S) *
***********************************************************************
* GD * Graphical Reports, New Charts, Old Charts *
* Chart * New Charts, Old Charts *
* Template-GD * Graphical Reports *
* GDTextUtil * Graphical Reports *
* GDGraph * Graphical Reports *
* XML-Twig * Move Bugs Between Installations *
* MIME-tools * Move Bugs Between Installations *
* PatchReader * Patch Viewer *
* PerlMagick * Optionally Convert BMP Attachments to PNGs *
* perl-ldap * LDAP Authentication *
* Authen-SASL * SMTP Authentication *
* RadiusPerl * RADIUS Authentication *
* HTML-Parser * More HTML in Product/Group Descriptions *
* HTML-Scrubber * More HTML in Product/Group Descriptions *
* Email-MIME-Attachment-Stripper * Inbound Email *
* Email-Reply * Inbound Email *
* mod_perl * mod_perl *
***********************************************************************
COMMANDS TO INSTALL:
GD: ppm install GD
Chart: ppm install Chart
Template-GD: ppm install Template-GD
GDTextUtil: ppm install GDTextUtil
GDGraph: ppm install GDGraph
XML-Twig: ppm install XML-Twig
MIME-tools: ppm install MIME-tools
PatchReader: ppm install PatchReader
PerlMagick: ppm install PerlMagick
perl-ldap: ppm install perl-ldap
Authen-SASL: ppm install Authen-SASL
RadiusPerl: ppm install RadiusPerl
HTML-Parser: ppm install HTML-Parser
HTML-Scrubber: ppm install HTML-Scrubber
Email-MIME-Attachment-Stripper: ppm install Email-MIME-Attachment-Stripper
Email-Reply: ppm install Email-Reply
mod_perl: ppm install mod_perl
</code>
Vamos, que me faltan un montón de módulos…
Ejecuto la primera línea de las dos que me pide que ejecute como administrador:
ppm repo add theory58S http://theoryx5.uwinnipeg.ca/ppms
Y obtengo la siguiente salida:
Repositories:
[1] ActiveState PPM2 Repository
[2] ActiveState Package Repository
[3] theory58S
Así es que al parecer, acabo de añadir theory58S a los repositorios de Perl.
Posteriormente, tal y como sugiere la documentación, ejecuto la orden: ppm repo up theory58S un par de veces, hasta que ‘theory58S’ aparece el primero:
ppm repo up theory58S
Repositories:
[1] ActiveState PPM2 Repository
[2] theory58S
[3] ActiveState Package Repository
ppm repo up theory58S
[1] theory58S
[2] ActiveState PPM2 Repository
[3] ActiveState Package Repository
Después ejecuto todas las órdenes de instalación necesarias para los módulos principales:
ppm install CGI.pm
ppm install TimeDate
ppm install DBI
ppm install Template-Toolkit
ppm install Email-Send
ppm install Email-MIME
ppm install Email-MIME-Modifier
Instalo el acceso a las bases de datos mysql:
ppm install install DBD-mysql
E instalo algunos de los módulos opcionales.
Vuelvo a ejecutar perl checksetup.pl y me dice que el modulo CGI es obsoleto pero si lanzo el ppm install CGI.pm me dice que ya está instalado..
Lo desinstalo con “ppm remove CGI.pm”, lo vuelvo a instalar con “ppm install CGI.pm” y nada, al parecer bugzilla pide la versión 3.21 y la que me instala por defecto es la 3.05
Miro en la documentación de bugzilla y recomiendan añadir otro repositorio, así que ejecuto:
ppm repository add landfill http://www.landfill.bugzilla.org/ppm/
y posteriormente: “ppm repo up landfill” para colocarlo como primer repositorio.
Y ahora al instalar de nuevo el módulo CGI, sí que me coge la última versión, en este caso, la 3.23.
Pero, cuando hago un pmp describe CGI, me sigue apareciendo la versión 2.91…
Me he dado cuenta de que me coge el CGI 2.91 del repositorio de theory58S y el “CGI.pm” del de landfill.
Así que desinstalo ambos: “ppm remove CGI.pm” y “ppm remove CGI”.
Desactivo el repositorio de theory58S: con “ppm rep” veo la posicion en la que se encuentra (2), y con “ppm rep off 2″, lo desactivo.
Pruebo a instalar y sigo con el mismo problema, aunque me instala la versión 3.23, después en el checksetup.pl sigue encontrándome la 2.91.
Pruebo incluso a instalar el paquete directamente desde el repositorio:
ppm install http://theoryx5.uwinnipeg.ca/ppms/CGI.pm.ppd
Pero no soluciona el problema.
Finalmente, se me ocurre modificar directamente el requerimiento de Bugzilla y bajar la versión a la 2.90.
Para ello me voy al fichero Bugzilla\Install\Requirements.pm y sustituyo en la línea:
“version => (vers_cmp($perl_ver, ‘5.10′) > -1) ? ‘3.33′ : ‘3.21′”
la versión 2.90
“version => (vers_cmp($perl_ver, ‘5.10′) > -1) ? ‘2.90′ : ‘2.90′”
Y, por fin funciona!!!
Ahora, el checksetup.pl me ha creado un fichero localconfig con la configuración de BugZilla.
Lo edito y seteo los datos de la bd.
Dado que usaré mysql como bd, creo estas líneas en el fichero my.ini:
# For BugZilla
# Allow packets up to 4MB
max_allowed_packet=4M
# For BugZilla
# Allow small words in full-text indexes
ft_min_word_len=2
Creo la base de datos en mysql.
CREATE DATABASE `bugs` DEFAULT CHARACTER SET latin1 COLLATE latin1_spanish_ci;
Y creo el usuario de bugzilla en la bd, asignándole permisos:
GRANT SELECT, INSERT,
UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
TO bugs@localhost IDENTIFIED BY '$db_pass‘;
Vuelvo a lanzar checksetup.pl y me crea las tablas en la bd y las plantillas html.
Me pide además los datos del servidor SMTP.
Me aparecen algunos errores que espero que no sean importantes (Attempt to free unreferenced scalar…)
Me pide el e-mail del administrador, password.. y parece que ya está todo.
A continuación, creo el sitio web en iis y añado index.cgi a los documentos del sitio web.
Vuelvo a ejecutar checksetup.pl y, por fin, me aparece que ya se ha instalado BugZilla..
A continuación, creo el sitio web en iis y añado index.cgi a los documentos del sitio web.
En la pestaña ‘Home Directory’ del nuevo sitio virtual, en el botón ‘Configuration’, me lleva a Mappings y ahí tengo que añadir la extensión cgi para que apunte a:
<full path to perl.exe >\perl.exe -x<full path to Bugzilla> -wT "%s" %s
Por ejemplo:
c:\perl\bin\perl.exe -xc:\bugzilla -wT "%s" %s
y si existe la extensión .pl, borrarla.
Fuentes:
http://www.chuidiang.com/chuwiki/index.php?title=Instalaci%C3%B3n_de_Bugzilla_en_windows
http://www.bugzilla.org/docs/2.20/html/os-specific.html#win32-perl-modules