Installing Bugzilla on Windows ....hushshshsh

 
One more challege here in life and new learning experince too :)

Installing bugzilla on windows. A very well known package as bug tracking system and very confusing to install to (as per my experience) ,I already had an experience of installing it on linux , it took me 2 days and lots and lots of googling to sort out those issues as your problems would be with respect to perl or apache packages installation which does not have to do anything with bugzilla. Now the challenge was to install it on windows server Company requirement :(  and experince on linux cant help you when you are on windows setup with all the packages are seperately installed and managed.

Although the steps are given in the installation document we do face problems so again a sincere effort to let all of you explain the procedure in simplest steps.

There is a direct installer for the windows available but dont install that it may harm your existing Apache , Mysql installation which may result in loosing crucial data.

So here we go,


I am expecting that your systems have Apache and Mysql setp up installed.

Now the Steps :
1) Download stable version of Bugzilla from http://www.bugzilla.org/download/

2) Extract the files and put them in your document root in my case it is "C:/Program Files/Apache Group/Apache2/htdocs" with name "bugzilla"

3) Now find out your mysql configuration file my.ini and set max_allowed_packet to 4M and add ft_min_word_len = 2 line under that (I have no idea why we need to do this )

4) Create a database named "bugs" in your mysql

5) Download and install ActiveState Perl 5.8.1 or higher from http://www.activestate.com/activeperl/

6) It creates a standard Perl directory in your C drive c:\Perl

7) Create a Temp directory in c:

8) Installing ans updating the modules
    Go to c:\Perl\bin\
    Now do the following
    C:\Perl\bin> ppm version
    C:\Perl\bin> ppm repo add UWinnipeg http://cpan.uwinnipeg.ca/PPMPackages/10xx/
    C:\Perl\bin> ppm repo add Trouchelle http://trouchelle.com/ppm10/
    C:\Perl\bin> ppm repo list
    C:\Perl\bin> ppm upgrade
    C:\Perl\bin> ppm install AppConfig
    C:\Perl\bin> ppm install TimeDate
    C:\Perl\bin> ppm install DBI
    C:\Perl\bin> ppm install DBD-mysql
    C:\Perl\bin> ppm install Template-Toolkit
    C:\Perl\bin> ppm install MailTools
    C:\Perl\bin> ppm install GD
    C:\Perl\bin> ppm install Chart
    C:\Perl\bin> ppm install GDGraph
    C:\Perl\bin> ppm install PatchReader
    C:\Perl\bin> ppm install Net-LDAP-Express

9) Now Come to your apache to let it know how to communicate for bugzilla
    If your Document root is located somewhere else as it is in my case at
    C:/Program Files/Apache Group/Apache2/htdocs

    Simple add the following entire block in your httpdf.conf

    <Directory "C:/Program Files/Apache Group/Apache2/htdocs/bugzilla">
        Options Indexes FollowSymLinks ExecCGI
        AllowOverride All
        Order allow,deny
        Allow from all
        ScriptInterpreterSource Registry-Strict
    </Directory>

    Dont forget to change the path above as per your structure. Then  add index.cgi to the DirectoryIndex list.    

    DirectoryIndex index.html index.html.var index.cgi

    Restart your apache.

10) Now you need to add an entry to the Registry so Apache will use Perl to execute .cgi files.    
    Open run terminal type "regedit" to open your registory editor
    Check for HKEY_CLASSES_ROOT
    Search for .cgi if not present add new
    Under .cgi Add Shell
    Under .cgi > Shell add ExecCGI
    Under .cgi > Shell > ExecCGI add Command
    And change the value of default at the right hand section to "c:\Perl\bin\perl.exe -T"

11) Now go to your bugzilla directory
    C:/Program Files/Apache Group/Apache2/htdocs/bugzilla
   
    Run
    C:/Program Files/Apache Group/Apache2/htdocs/bugzilla> c:\Perl\bin\perl.exe checksetup.pl
   
    And the process will begin, If any package is missing it will show you on the screen with red colour , also the screen will give you the ppm install command to install those packages. To install those packages with  ppm command just follow the step 8. Dont worry if mod_perl if not getting installed , its not mendatory on windows setup. Just install as many as you can.

    Once maximum of them are installed run checksetup.pl again , which will create localconfig.pm file in your bugzilla setup
   
12) Open the localcofing.pm with your editor and change the database connectivity parameters like hostname, username,password etc.

13) Execute your checksetup.pl again as shown in step 11.
    It will start creating your tables with seed data.
    Bugzilla requires smtp details compulsory so do have smtp hostname/ server details with you enter them , proceed with submitting administration authetication details and your are done

    Just check your bugzilla setup from URL http://localhost/bugzilla/ If everythis is working fine ...you cracked it else just start reading your apache server logs to find out what exactly happening.

Most Known errors
    1) Internal server errors.
    2) Permission denied to the folder.

    Both of these things have to be dealth with how properly you let apache know that where your bugzilla folder is kept and where exectly your perl path is mentioned to be used to execure bugzilla files.

Reference to my document is : https://wiki.mozilla.org/Bugzilla:Win32Install#ActiveState_Perl 

14) One of the methods for making Bugzilla work with your SMTP support if it is not working by providing SMTP details
in edit parameters page.
    1) Download sendmail.exe class from http://glob.com.au/sendmail/ extract and put it under  C:\usr\lib , create
    usr and lib in c: , sendmail.exe and sendmail.ini shall be found under c:\usr\lib
    2) Open sendmail.ini and put smtp server, port , auth_username and auth_password
    2) Go to http://hostname/bugzilla/editparams.cgi?section=mta
    3) Choose mail delivery method as sendmail and save the changes
    4) If the mail is getting sent but u are getting some I/O error on the screen visit mailer.pm in ur bugzilla
    folder in document root and search and comment following lines
        #ThrowCodeError('mail_send_error', { msg => $retval, mail => $email })
        #if !$retval;
  
At the end what i understood in the installation that it was all about how informative you are about apache and windows configurations.

Hope this document will help to save lots of your time :)

Cheerz.

Comments

  1. Thanks for posting your experience. The best place to find instructions on installing Bugzilla on Windows is here:

    http://wiki.mozilla.org/Bugzilla:Win32Install

    There are a few points in your list that are not quite right, but all of them are also on the Win32Install page.

    -Max

    ReplyDelete
  2. Hey Max ...Thanks for the comment, i have already mentioned in the blog feed that its referenced from there only , the idea behind creating the post was to explain my experience and to give more precise information about the steps.Please provide me the information which you think is wrong, so that i can update my knowledge base accordingly.

    ReplyDelete
  3. http://cpan.uwinnipeg.ca/PPMPackages/10xx/ this link is not working for me its showing forbidden.

    ReplyDelete

Post a Comment