Bugzilla administration

Bugzilla Administration edit

Installing Bugzilla edit

Installation edit

In outline, the installation proceeds as follows:

  • Install Perl (5.8.0 or above for non-Windows platforms; 5.8.1 for Windows)
    • Perl for Windows can be obtained from ActiveState
    • The current installation of Bugzilla uses Perl located at C:\Perl
  • Install a Database Engine
    • Bugzilla works with MySQL and PostgreSQL database servers.
    • You only require one of these systems to make use of Bugzilla.
    • The current installation of Bugzilla uses MySql , which is already installed as a service on the machine as part of the XAmpp bundle.
  • Install a Webserver
    • Any web server that is capable of running CGI scripts will work
    • The current installation of Bugzilla uses Apcahe , which is already installed as a service on the machine as part of the XAmpp bundle.
  • Install Bugzilla
    • Download Bugzilla and place it in a suitable directory, accessible by the default web server user
    • The current instalation of bugzilla is placed at D:\compwest\bugzilla-3.0
  • Install Perl modules
    • Bugzilla's installation process is based on a script called checksetup.pl. The first thing it checks is whether you have appropriate versions of all the required Perl modules
    • Run checksetup.pl
  checksetup.pl --check-modules
    • checksetup.pl will print out a list of the required and optional Perl modules, together with the versions (if any) installed on your machine.
    • The Perl modules can be installed as follows:
 C:\perl> ppm install <module name>
    • The best source for the Windows PPM modules needed for Bugzilla is probably the Bugzilla Test Server (aka 'Landfill'), so you should add the Landfill package repository as follows:
  ppm repository add landfill http://www.landfill.bugzilla.org/ppm/
    • Here is a complete list of modules and their minimum versions
  1. Required Perl modules:
    1. CGI 2.93 or CGI 3.11 if using mod_perl
    2. Date::Format (2.21)
    3. DBI (1.41)
    4. DBD::mysql (2.9003) if using MySQL
    5. DBD::Pg (1.45) if using PostgreSQL
    6. File::Spec (0.84)
    7. Template (2.12)
    8. Email::Send (2.00)
    9. Email::MIME::Modifier (any)
  2. Optional Perl modules:
    1. GD (1.20) for bug charting
    2. Template::Plugin::GD::Image (1.20) for Graphical Reports
    3. Chart::Base (1.0) for bug charting
    4. GD::Graph (any) for bug charting
    5. GD::Text (any) for bug charting
    6. XML::Twig (any) for bug import/export
    7. MIME::Parser (5.406) for bug import/export
    8. LWP::UserAgent (any) for Automatic Update Notifications
    9. PatchReader (0.9.4) for pretty HTML view of patches
    10. Image::Magick (any) for converting BMP image attachments to PNG
    11. Net::LDAP (any) for LDAP Authentication
    12. SOAP::Lite (any) for the web service interface
    13. HTML::Parser (3.40) for More HTML in Product/Group Descriptions
    14. HTML::Scrubber (any) for More HTML in Product/Group Descriptions
    15. Email::MIME::Attachment::Stripper (any) for Inbound Email
    16. Email::Reply (any) for Inbound Email
    17. mod_perl2 (1.999022) for mod_perl
    18. CGI (2.93) for mod_perl
    19. Apache::DBI (0.96) for mod_perl2
  • Install a Mail Transfer Agent or a SMTP Server
    • Bugzilla uses this to send emails. You have to set it correctly to send emails.
    • The current installation of bugzilla uses JAMES, which is installed as a service using default settings

Configuration edit

  • localconfig
    • You should now run checksetup.pl again, this time without the --check-modules switch.
    • This time, checksetup.pl should tell you that all the correct modules are installed and will display a message about, and write out a file called, localconfig. This file contains the default settings for a number of Bugzilla parameters.
    • Load this file in your editor and modify the parameters accordingly.
    • The current instalation of bugzilla is configured as follows
 $db_driver = 'mysql';
 $db_host = 'localhost';
 $db_name = 'bugs';
 $db_user = 'bugs';
 $db_pass = 'XXXX';
 $db_port = 0;
  • Configuring Database
    • You need to add a new MySQL user for Bugzilla to use
    • We use an SQL GRANT command to create a "bugs" user. This also restricts the "bugs"user to operations within a database called "bugs", and only allows the account to connect from "localhost". Modify it to reflect your setup if you will be connecting from another machine or as a different user.

(NOTE : The $db_pass in the query should match the $db_pass in localconfig file)

  mysql> GRANT SELECT, INSERT,
         UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES,
         CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.*
         TO bugs@localhost IDENTIFIED BY '$db_pass';
   mysql> FLUSH PRIVILEGES;


  • Configuring webserver
    • Load the apache hhtpd.conf file into a editor.(In this case it can be found at C:\xampp\apache\conf)
    • Make apache to listen on a new port by adding LISTEN portnumber
    • Uncomment the line Include conf/extra/httpd-vhosts.conf
    • Load httpd-vhosts.conf file into a editor.(In this case it can be found at C:\xampp\apache\conf\extra)
    • Add a virual host

For the current installation a new virtual host is defined as follows

 <VirtualHost *:90>
      DocumentRoot D:\compwest\bugzilla-3.0
      ServerName localhost:90
  </VirtualHost> 


Configuring Bugzilla edit

Bugzilla is configured by changing various parameters, accessed from the "Edit parameters" link in the page footer. For the description of the parameters click on the link ConfiguringBugzilla