Install Bugzilla on openSUSE12.2 with Oracle

Here are the full instructions to install Bugzilla from the BugZilla site. The instructions here are just addition to these instructions, recorded when I installed Bugzilla on my openSUSE12.2 machine. We will just go as per the steps mentioned at the Bugzilla Site and then will see what problems we face.
Install perl and all it’s modules
Check if all Perl modules required by bugzilla are present:
vivek@linux-8shu:~/public_html/bugzill> ./checksetup.pl --check modules
***********************************************************************
* 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. *
* See below for commands to install these modules.                    *
***********************************************************************
COMMANDS TO INSTALL REQUIRED MODULES (You *must* run all these commands
and then re-run checksetup.pl):

    /usr/bin/perl install-module.pl DateTime
    /usr/bin/perl install-module.pl DateTime::TimeZone
    /usr/bin/perl install-module.pl Email::Send
    /usr/bin/perl install-module.pl Email::MIME
    /usr/bin/perl install-module.pl Math::Random::ISAAC
*** Installation aborted. Read the messages above. ***
                
  You may get a lot more,less or none requirements than the above, If you have some requirements listed, then go to YaST or zypper and search for the perl package and install it. All the packages will not be present in the openSUSE oss,….. To install all required Perl modules, you need to add Perl development repo to the zypper/YaST. Here is the repo link Select your distribution and add that repository, or you can do “Install/Remove Software” –> Configuration –> Repositories –> Add –> Community Repositories and then select “openSUSE BuildService – devel:languages:perl” there. Select and install all modules required for Bugzilla. Then run
./checksetup.pl --check-modules
again and make sure that all the required modules are installed.
Database Engine
I am using Oracle as a Bugzilla DB and got Oracle 11gR2 XE installed on my system. Make sure that the database is up and running. Also make sure that Perl module for database you are using is installed. For oracle it is DBD::Oracle. I couldn’t find it in the repos. So, did what the
checksetup.pl
told me to do. Run
su -c "/usr/bin/perl install-module.pl DBD::Oracle
, and make sure $ORACLE_HOME and $LD_LIBRARY_PATH are set properly before running this command.
Web Server
I will be using Apache web server, which is there in the openSUSE repositories.
Perl Modules
Already taken care of here.
Mail Agent
I will be using the default mail agent on by openSUSE12.2
Installing Bugzilla
Run ./checksetup.pl. If everything goes fine, it will create a file localconfig. Modify the parameters in it, here is my localconfig

# If you are using Apache as your web server, Bugzilla can create .htaccess
# files for you, which will keep this file (localconfig) and other
# confidential files from being read over the web.
# 
# If this is set to 1, checksetup.pl will create .
htaccess files if 
# they don't exist.
# 
# If this is set to 0, checksetup.pl will not create .htaccess files.
$create_htaccess = 1;

# The name of the group that your web server runs as. On Red Hat
# distributions, this is usually "apache". On Debian/Ubuntu, it is 
# usually "www-data".
# 
# If you have use_suexec turned on below, then this is instead the name
# of the group that your web server switches to to run cgi files.
# 
# If this is a Windows machine, ignore this setting, as it does nothing.
# 
# If you do not have access to the group your scripts will run under,
# set this to "". If you do set this to "", then your Bugzilla installation
# will be _VERY_ insecure, because some files will be world readable/writable,
# and so anyone who can get local access to your machine can do whatever they
# want. You should only have this set to "" if this is a testing installation
# and you cannot set this up any other way. YOU HAVE BEEN WARNED!
# 
# If you set this to anything other than "", you will need to run checksetup.pl
# as root or as a user who is a member of the specified group.
$webservergroup = 'www'; #File created by bugzilla has "Apache" here. Make sure to change it to what is your webserver group, mine is "www"

# Set this to 1 if Bugzilla runs in an Apache SuexecUserGroup environment.
# 
# If your web server runs control panel software (cPanel, Plesk or similar),
# or if your Bugzilla is to run in a shared hosting environment, then you are
# almost certainly in an Apache SuexecUserGroup environment.
# 
# If this is a Windows box, ignore this setting, as it does nothing.
# 
# If set to 0, checksetup.pl will set file permissions appropriately for
# a normal webserver environment.
# 
# If set to 1, checksetup.pl will set file permissions so that Bugzilla
# works in a SuexecUserGroup environment. 
$use_suexec = 0;

# 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 = 'oracle'; #Database you are going to use

# 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 = 'XE'; #Database server instance

# Who we connect to the database as.
$db_user = 'bugs'; #Database username

# 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 = 'my_Password'; Database password

# 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 = 0;

# MySQL Only: Enter a path to the unix socket for MySQL. If this is
# blank, then MySQL's compiled-in default will be used. You probably
# want that.
$db_sock = '';

# Should checksetup.pl try to verify that your database setup is correct?
# With some combinations of database servers/Perl modules/moonphase this
# doesn't work, and so you can try setting this to 0 to make checksetup.pl
# run.
$db_check = 0;

# Most web servers will allow you to use index.cgi as a directory
# index, and many come preconfigured that way, but if 
yours doesn't
# then you'll need an index.html file that provides redirection
# to index.cgi. Setting $index_html to 1 below will allow
# checksetup.pl to create an index.html for you if it doesn't exist.
# NOTE: checksetup.pl will not replace an existing file, so if you
#       wish to have checksetup.pl create one for you, you must
#       make sure that index.html doesn't already exist.
$index_html = 0;

# If you want to use the CVS integration of the Patch Viewer, please specify
# the full path to the "cvs" executable here.
$cvsbin = '/usr/bin/cvs';

# If you want to use the "Difference Between Two Patches" feature of the
# Patch Viewer, please specify the full path to the "interdiff" executable
# here.
$interdiffbin = '/usr/bin/interdiff';

# For the "Difference Between Two Patches" feature to work, we need to know
# what directory the "diff" bin is in. (You only need to set this if you
# are using that feature of the Patch Viewer.)
$diffpath = '/usr/bin';

# This secret key is used by your installation for the creation and
# validation of encrypted tokens. These tokens are used to implement
# security features in Bugzilla, to protect against certain types of attacks.
# A random string is generated by default. It's very important that this key
# is kept secret. It also must be very long.
$site_wide_secret = '################################################################';

  After modifying localconfig , run checksetup.pl again, if everything goes fine, it will ask you for Bugzilla admin user details. Here is what it will look like
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: vivek@linux-8shu.site
Enter the real name of the administrator: Vivek Bhat
Enter a password for the administrator account: 
Please retype the password to verify: 
vivek@linux-8shu.site is now set up as an administrator.
Creating initial dummy product 'TestProduct'...

Now that you have installed Bugzilla, you should visit the 'Parameters'
page (linked in the footer of the Administrator account) to ensure it
is set up as you wish - this includes setting the 'urlbase' option to
the correct URL.
checksetup.pl complete.
  Finish it, and you will have bugzilla running.

Leave a Comment

Your email address will not be published.

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.