Web Server Setup: 09 - BugZilla

BugZilla

  • copy bugzilla to ‘D:\xampp\bugzilla\bugzilla-4.2.5’
  • copy ‘D:\xampp\bugzilla\bugzilla-4.2.5’ to ‘D:\xampp\htdocs\bugzilla’
  • set PATH=%PATH%;D:\xampp\perl\bin
  • navigate to ‘D:\xampp\htdocs\bugzilla’
  • run ‘perl checksetup.pl’

COMMANDS TO INSTALL REQUIRED MODULES (You *must* run all these commands

and then re-run checksetup.pl):

    D:\xampp\perl\bin\perl.exe install-module.pl Email::Send
    D:\xampp\perl\bin\perl.exe install-module.pl Email::MIME
    D:\xampp\perl\bin\perl.exe install-module.pl Math::Random::ISAAC

To attempt an automatic install of every required and optional module

with one command, do:

  D:\xampp\perl\bin\perl.exe install-module.pl --all

 

cpan>
cpan>install Email::Send
cpan>install Email::MIME
cpan>install Math::Random::ISAAC
  • Failing due to no ‘make’ file
  • Make sure the path to perl has been defined in your Ikonboard's configuration.
    The first line (shebang) of a perl script should contain the path to perl with any command line switches.

    Linux based OS:
    #!/usr/bin/perl

    Windows based OS:
    #!"C:\xampp\perl\bin\perl.exe"
    Change the path to your own perl.exe path.

    To find out if your perl is working go to:
    http://localhost

    Select the Perl menu item under Demos heading.

    You should see some test links.

    Click on the link to http://localhost/perl/perlinfo.pl

    which should bring up a web page containing a table with all the perl modules installed by default plus lots more info about your Perl version.

    To install a perl module make sure you are connected to the Internet.
    Open a command prompt in xampp\perl\bin directory
    Type ppm at the prompt and hit Enter key.
    Use the Perl Packet Manager when it finishes loading all the perl modules in your system that it can locate at the ActiveState Package Repository.

  • once you have located the full perl module name to search for and the module is not in that list, follow the DB_File example below.

    Enter DB_File in the text box in ppm and wait for the list of DB_File modules to appear.
    Highlight DB_File and click on the + Mark for install icon
    Then click on the -> arrow icon and it should install for you.
  • The above didn’t fix issue, couldn’t get PPM to conjure a program
  • Downloaded Strawberry 5.16.1
  • copied libexpat-1_dll to perl/perl/bin
  • able to run…..

CheckSetup to verify needed modules

checksetup.pl –check-modules

  • Should report to install modules:

D:\xampp\perl\bin\perl.exe install-module.pl Email::Send

D:\xampp\perl\bin\perl.exe install-module.pl Email::MIME

D:\xampp\perl\bin\perl.exe install-module.pl Math::Random::ISAAC

perl.exe checksetup.pl –check-modules

  • All OK?, Then.. 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.

perl.exe checksetup.pl

  • Should create a localconfig

localconfig

# What SQL database to use. Default is mysql. List of supported databases

# can be obtained by listing Bugzilla/DB directory - every module corresponds

# to one supported database and the name of the module (before ".pm")

# corresponds to a valid value for this variable.

 

$db_driver = 'mysql';

 

# The DNS name or IP address of the host that the database server runs on.

 

$db_host = 'localhost';

 

# The name of the database. For Oracle, this is the database's SID. For

# SQLite, this is a name (or path) for the DB file.

 

$db_name = 'bugs';

 

# Who we connect to the database as.

$db_user = 'bugs';

 

# Enter your database password here. It's normally advisable to specify

# a password for your bugzilla database user.

# If you use apostrophe (') or a backslash (\) in your password, you'll

# need to escape it by preceding it with a '\' character. (\') or (\)

# (It is far simpler to just not use those characters.)

 

$db_pass = 'bugs';

 

# Sometimes the database server is running on a non-standard port. If that's

# the case for your database server, set this to the port number that your

# database server is running on. Setting this to 0 means "use the default

# port for my database server."

 

$db_port = 3066;

  • Create DB with data from above, then retry:

perl.exe checksetup.pl

Reading ./localconfig...

 

OPTIONAL NOTE: If you want to be able to use the 'difference between two

patches' feature of Bugzilla (which requires the PatchReader Perl module

as well), you should install patchutils from:

 

    http://cyberelk.net/tim/patchutils/

 

Checking for            DBD-mysql (v4.001)    ok: found v4.021

Checking for                MySQL (v5.0.15)   ok: found v5.5.27

 

WARNING: You need to set the max_allowed_packet parameter in your MySQL

configuration to at least 3276750. Currently it is set to 1048576.

You can set this parameter in the [mysqld] section of your MySQL

configuration file.

 

Adding new table bz_schema...

Initializing bz_schema...

Creating tables...

Converting attach_data maximum size to 100G...

Setting up choices for standard drop-down fields:

   priority bug_status rep_platform resolution bug_severity op_sys

Creating ./data directory...

Creating ./data/attachments directory...

Creating ./data/db directory...

Creating ./data/extensions directory...

Creating ./data/mining directory...

Creating ./data/webdot directory...

Creating ./graphs directory...

Creating ./skins/custom directory...

Creating ./data/extensions/additional...

Creating ./data/mailer.testfile...

Creating ./Bugzilla/.htaccess...

Creating ./data/.htaccess...

Creating ./data/attachments/.htaccess...

Creating ./data/webdot/.htaccess...

Creating ./graphs/.htaccess...

Creating ./lib/.htaccess...

Creating ./template/.htaccess...

Creating contrib/.htaccess...

Creating t/.htaccess...

Creating xt/.htaccess...

 

Bugzilla requires an SMTP server to function on Windows.

Please enter your SMTP server's hostname: localhost

Precompiling templates...done.

Initializing "Dependency Tree Changes" email_setting ...

Marking closed bug statuses as such...

Creating default classification 'Unclassified'...

Setting up foreign keys...

Setting up the default status workflow...

Creating default groups...

Setting up user preferences...

 

Looks like we don't have an administrator set up yet. Either this is

your first time using Bugzilla, or your administrator's privileges

might have accidentally been deleted.

 

Enter the e-mail address of the administrator: novus6@yahoo.com

Enter the real name of the administrator: Novus6

Enter a password for the administrator account: admins

DB read

  • Added bugs2 / bugs2 user for the DB and retried
  • data/params not found, though it exists in \xampp\htdocs\bugzilla\data\params
  • had two instances of Bugzilla:

/xampp/bugzilla

/xampp/htdocs/bugzilla/

  • working off the htdocs now and getting errors after running

perl checksetup.pl –check-modules

perl checksetup.pl

  • /bugzilla

Software error:

install_driver(mysql) failed: Can't load 'D:/xampp/perl/perl/vendor/lib/auto/DBD/mysql/mysql.dll' for module DBD::mysql: load_file:The specified module could not be found at D:/xampp/perl/perl/lib/DynaLoader.pm line 190.

 at (eval 1017) line 3.

Compilation failed in require at (eval 1017) line 3.

Perhaps a required shared library or dll isn't installed where expected

 at Bugzilla/DB.pm line 1284.

  • ran the following as a last-ditch effort

perl checksetup.pl --all

 

libmysql_.dll

D:\xampp\perl\perl\vendor\lib\auto\DBD\mysql\libmysql_.dll

  • put libmysql_dll in a bunch of places

\perl\perl\vendor\lib\auto\DBD\mysql\

 

Reports Option (libgd-2.dll)

 

run ‘cpan .’ to build the module to perl/bin/site

 

Open a Shell from XAMPP

navigate to D:\xampp\htdocs\bugzilla

BugZilla Install Attempt 2

Strawberry Perl or Active Perl

  • Download and install perl to /xampp/perl

httpd.conf updates for bugzilla

  • Add settings for bugzilla
  • tell apache to look to the registry for the perl path/command string

# BugZilla

#

# This should be changed to whatever you set DocumentRoot to.

#

<Directory "D:/xampp/htdocs/bugzilla">

 

#

# Possible values for the Options directive are "None", "All",

# or any combination of:

#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews

#

# Note that "MultiViews" must be named *explicitly* --- "Options All"

# doesn't give it to you.

#

# The Options directive is both complicated and important.  Please see

# http://httpd.apache.org/docs-2.0/mod/core.html#options

# for more information.

#

    Options Indexes FollowSymLinks ExecCGI

 

#

# AllowOverride controls what directives may be placed in .htaccess files.

# It can be "All", "None", or any combination of the keywords:

#   Options FileInfo AuthConfig Limit

#

    AllowOverride All

 

#

# Controls who can get stuff from this server.

#

   Order allow,deny

   Allow from all

 

#

# Tell Apache to use Perl to execute .cgi

#

    ScriptInterpreterSource Registry-Strict

 

</Directory>

 

 

<Directory htdocs/bugzilla>

AddHandler cgi-script .cgi

Options +Indexes +ExecCGI

DirectoryIndex index.cgi

AllowOverride Limit FileInfo Indexes

</Directory>

PERL CHECKSETUP.PL

  • Run checksetup.pl –check-modules to verify installed components

perl checksetup.pl –check-modules

perl install-module.pl <class>::<component>

  • Update Required Modeules Modules

D:\xampp\perl\bin\perl.exe install-module.pl Email::Send

D:\xampp\perl\bin\perl.exe install-module.pl Email::MIME

D:\xampp\perl\bin\perl.exe install-module.pl Math::Random::ISAAC

PERL CHECKSETUP.PL

  • Run checksetup.pl –check-modules to verify installed components

perl checksetup.pl –check-modules

http://localhost:81/bugzilla/

Software error:

 

The ./data/params file does not exist. You probably need to run checksetup.pl. at Bugzilla/Config.pm line 337.

Compilation failed in require at D:/xampp/htdocs/bugzilla/index.cgi line 34.

BEGIN failed--compilation aborted at D:/xampp/htdocs/bugzilla/index.cgi line 34.\

perl checksetup.pl

Reading ./localconfig...

 

OPTIONAL NOTE: If you want to be able to use the 'difference between two

patches' feature of Bugzilla (which requires the PatchReader Perl module

as well), you should install patchutils from:

 

    http://cyberelk.net/tim/patchutils/

 

 

This version of Bugzilla contains some variables that you may want to

change and adapt to your local settings. The following variables are

new to ./localconfig since you last ran checksetup.pl:

 

create_htaccess, webservergroup, use_suexec, db_driver, db_host,

db_name, db_user, db_pass, db_port, db_sock, db_check, index_html,

cvsbin, interdiffbin, diffpath, site_wide_secret

 

Please edit the file ./localconfig and then re-run checksetup.pl

to complete your installation.

/bugzilla/localconfig

# What SQL database to use. Default is mysql. List of supported databases

# can be obtained by listing Bugzilla/DB directory - every module corresponds

# to one supported database and the name of the module (before ".pm")

# corresponds to a valid value for this variable.

 

$db_driver = 'mysql';

 

# The DNS name or IP address of the host that the database server runs on.

 

$db_host = 'localhost';

 

# The name of the database. For Oracle, this is the database's SID. For

# SQLite, this is a name (or path) for the DB file.

 

$db_name = 'bugs';

 

# Who we connect to the database as.

$db_user = 'bugs';

 

# Enter your database password here. It's normally advisable to specify

# a password for your bugzilla database user.

# If you use apostrophe (') or a backslash (\) in your password, you'll

# need to escape it by preceding it with a '\' character. (\') or (\)

# (It is far simpler to just not use those characters.)

 

$db_pass = 'bugs';

 

# Sometimes the database server is running on a non-standard port. If that's

# the case for your database server, set this to the port number that your

# database server is running on. Setting this to 0 means "use the default

# port for my database server."

 

$db_port = 3306;

perl checksetup.pl

Reading ./localconfig...

 

OPTIONAL NOTE: If you want to be able to use the 'difference betw

patches' feature of Bugzilla (which requires the PatchReader Perl

as well), you should install patchutils from:

 

    http://cyberelk.net/tim/patchutils/

 

Checking for            DBD-mysql (v4.001)    ok: found v4.021

Checking for                MySQL (v5.0.15)   ok: found v5.5.27

 

WARNING: You need to set the max_allowed_packet parameter in your

configuration to at least 3276750. Currently it is set to 1048576

You can set this parameter in the [mysqld] section of your MySQL

configuration file.

 

Creating ./data directory...

Creating ./data/attachments directory...

Creating ./data/db directory...

Creating ./data/extensions directory...

Creating ./data/mining directory...

Creating ./data/webdot directory...

Creating ./graphs directory...

Creating ./skins/custom directory...

Creating ./data/extensions/additional...

Creating ./data/mailer.testfile...

Creating ./Bugzilla/.htaccess...

Creating ./data/.htaccess...

Creating ./data/attachments/.htaccess...

Creating ./data/webdot/.htaccess...

Creating ./graphs/.htaccess...

Creating ./lib/.htaccess...

Creating ./template/.htaccess...

Creating contrib/.htaccess...

Creating t/.htaccess...

Creating xt/.htaccess...

 

Bugzilla requires an SMTP server to function on Windows.

Please enter your SMTP server's hostname:localhost

Precompiling templates...done.

 

Now that you have installed Bugzilla, you should visit the 'Param

page (linked in the footer of the Administrator account) to ensur

is set up as you wish - this includes setting the 'urlbase' optio

the correct URL.

checksetup.pl complete.

libmysql_dll

D:\xampp\perl\perl\vendor\lib\auto\DBD\mysql

 

libgd-2.dll ( Reports Option )

 

libgd-2.dll  (Reports Option Error )

D:\xampp\perl\perl\vendor\lib\auto\GD\libgd-2.dll

 

bugzilla/data/params

%param = (

           'LDAPBaseDN' => '',

           'LDAPbinddn' => '',

           'LDAPfilter' => '',

           'LDAPmailattribute' => 'mail',

           'LDAPserver' => '',

           'LDAPstarttls' => 0,

           'LDAPuidattribute' => 'uid',

           'RADIUS_NAS_IP' => '',

           'RADIUS_email_suffix' => '',

           'RADIUS_secret' => '',

           'RADIUS_server' => '',

           'ajax_user_autocompletion' => '1',

           'allow_attachment_deletion' => 0,

           'allow_attachment_display' => 0,

           'allowbugdeletion' => 0,

           'allowemailchange' => 1,

           'allowuserdeletion' => 0,

           'announcehtml' => 'SiloSix AnounceHTML ',

           'attachment_base' => '',

           'auth_env_email' => '',

           'auth_env_id' => '',

           'auth_env_realname' => '',

           'bonsai_url' => '',

           'chartgroup' => 'editbugs',

           'commentonchange_resolution' => 0,

           'commentonduplicate' => 0,

           'confirmuniqueusermatch' => 1,

           'cookiedomain' => '',

           'cookiepath' => '/',

           'createemailregexp' => '.*',

           'cvsroot' => '',

           'cvsroot_get' => '',

           'debug_group' => 'admin',

           'default_search_limit' => '500',

           'defaultopsys' => 'Windows',

           'defaultplatform' => 'PC',

           'defaultpriority' => '---',

           'defaultquery' => 'resolution=---&emailassigned_to1=1&emailassigned_to2=1&emailreporter2=1&emailcc2=1&emailqa_contact2=1&emaillongdesc3=1&order=Importance&long_desc_type=substring',

           'defaultseverity' => 'enhancement',

           'docs_urlbase' => 'docs/%lang%/html/',

           'duplicate_or_move_bug_status' => 'RESOLVED',

           'emailregexp' => '^[\\w\\.\\+\\-=]+@[\\w\\.\\-]+\\.[\\w\\-]+$',

           'emailregexpdesc' => 'A legal address must contain exactly one \'@\', and at least one \'.\' after the @.',

           'emailsuffix' => '',

           'globalwatchers' => '',

           'inbound_proxies' => '',

           'insidergroup' => '',

           'letsubmitterchoosemilestone' => 1,

           'letsubmitterchoosepriority' => 1,

           'lxr_root' => '',

           'lxr_url' => '',

           'mail_delivery_method' => 'SMTP',

           'mailfrom' => 'bugzilla-daemon',

           'maintainer' => 'novus6@yahoo.com',

           'makeproductgroups' => 0,

           'max_search_results' => '10000',

           'maxattachmentsize' => '1000',

           'maxlocalattachment' => '0',

           'maxusermatches' => '1000',

           'mostfreqthreshold' => '2',

           'musthavemilestoneonaccept' => 0,

           'mybugstemplate' => 'buglist.cgi?resolution=---&amp;emailassigned_to1=1&amp;emailreporter1=1&amp;emailtype1=exact&amp;email1=%userid%',

           'noresolveonopenblockers' => 0,

           'password_complexity' => 'no_constraints',

           'proxy_url' => '',

           'querysharegroup' => 'editbugs',

           'quip_list_entry_control' => 'open',

           'rememberlogin' => 'on',

           'requirelogin' => '0',

           'search_allow_no_criteria' => 1,

           'shadowdb' => '',

           'shadowdbhost' => '',

           'shadowdbport' => '3306',

           'shadowdbsock' => '',

           'shutdownhtml' => '',

           'smtp_debug' => 0,

           'smtp_password' => 'admin',

           'smtp_username' => 'admin',

           'smtpserver' => 'localhost',

           'ssl_redirect' => 0,

           'sslbase' => 'https://e6510vm:444/bugzilla/',

           'strict_isolation' => 0,

           'strict_transport_security' => 'off',

           'timetrackinggroup' => 'editbugs',

           'upgrade_notification' => 'latest_stable_release',

           'urlbase' => 'http://e6510vm/bugzilla/',

           'use_mailer_queue' => 0,

           'use_see_also' => 1,

           'usebugaliases' => 0,

           'useclassification' => 0,

           'usemenuforusers' => '0',

           'useqacontact' => 0,

           'user_info_class' => 'CGI',

           'user_verify_class' => 'DB',

           'usestatuswhiteboard' => 0,

           'usetargetmilestone' => 0,

           'usevisibilitygroups' => 0,

           'utf8' => 1,