BitNami Mantis

    Mantis is a free popular web-based bugtracking system. It is written in the PHP scripting language and works with MySQL, MS SQL, and PostgreSQL databases and a webserver.

    Please, take a look to the Quick Start Guide to know the basic use of this Stack.

    How to start/stop the servers?

    Graphical tool

    The Stacks include a graphical tool to manage the servers easily. You can find the "manager-windows.exe", "manager-osx" or "manager-linux" tool in your installation directory. Using this tool, you can Start, Stop or Restart the servers and check the log files. You can click on the icon to start it.

    manager-servers.png

     

    manager-osx.png

     

     

     

     

     

     

     

     

     


    win_platform.png

    On Windows: You can also start the Manager tool from shortcuts: Start -> Program Files -> BitNami Stack -> Manager tool

    Command line tool

    If you prefer, you can use the "ctlscript.sh" utility from the command line. This script is in the installation directory.

    linux_platform.png

    On Virtual Machines and Cloud images:

    $ sudo /opt/bitnami/ctlscript.sh start

    A native installer on Linux:

    $ cd ~/application-version
    $ ./ctlscript.sh start
    

    mac_platform.png

     

    On OS X: You can start the Manager tool from the installation directory or you can use the "ctlscript.sh" utility from a Terminal.

    host:~ user$ cd /Applications/application-version
    host:~ user$ ./ctlscript.sh start

    How to change the default URL?

    This approach describes how to configure your application to run in the root URL directly. Also, you will be able to modify the URL to a NEW_DOMAIN using the bnconfig tool. The details are described below.

    Automatic Approach

    This approach is based on the Bitnami Configuration Tool (bnconfig).

    Bitnami Cloud Hosting

    The best way to change your URL in BCH is to go to your application tab and modify it there. In the Bitnami Cloud Hosting console, select Servers, choose your server, Manage and go to the Applications tab. Press there the pencil next to the application which URL you want to modify and choose .

    Cloud Images and Virtual Machines

    Moving the application to /

     If your application is running in "/mantis" you can remove the prefix from the URL executing the following command:

    $ sudo /opt/bitnami/apps/mantis/bnconfig --appurl /
    

    (use --help to check if that option is available for your application)

    Now you will be able to access to the application at http://YOUR_DOMAIN instead of http://YOUR_DOMAIN/mantis.

    Updating the IP or hostname

    Some applications require to update the IP/domain if the machine IP/domain changes. The bnconfig tool also has an option which updates the IP automatically during boot, called machine_hostname (use --help to check if that option is available for your application). Note that this tool changes the URL to http://NEW_DOMAIN/mantis

    sudo /opt/bitnami/apps/mantis/bnconfig --machine_hostname NEW_DOMAIN
    

    If you already moved your application to the root URL you should include both options at the same time.

    sudo /opt/bitnami/apps/mantis/bnconfig --appurl / --machine_hostname NEW_DOMAIN

     

    If you have configured your machine to use an static domain name or IP, you should rename or remove the "/opt/bitnami/apps/mantis/bnconfig" file.

    sudo mv /opt/bitnami/apps/mantis/bnconfig /opt/bitnami/apps/mantis/bnconfig.disabled

     

    Native Installer

    Remember to use your actual installation directory instead of installdir.

    Moving the application to /

    If your application is running in "/mantis" you can remove the prefix from the URL executing the following command:

    On Linux,

    installdir/apps/mantis/bnconfig --appurl /
    

    On Mac OS X, 

    installdir/apps/mantis/bnconfig.app/Contents/MacOS/installbuilder.sh --appurl /
    

    On Windows,

    installdir/apps/mantis/bnconfig.exe --appurl /
    

    (use --help to check if that option is available for your application)

    Now you will be able to access to the application at http://YOUR_DOMAIN instead of http://YOUR_DOMAIN/mantis.

    Updating the IP or hostname

    Some applications require to update the IP/domain if the machine IP/domain changes. The bnconfig tool also has an option which updates the IP automatically during boot, called machine_hostname (use --help to check if that option is available for your application). Note that this tool changes the URL to http://NEW_DOMAIN/mantis.

    installdir/apps/mantis/bnconfig --machine_hostname NEW_DOMAIN
    

    If you already moved your application to the root URL you should include both options at the same time.

    installdir/apps/mantis/bnconfig --appurl / --machine_hostname NEW_DOMAIN
    

     

    If you have configured your machine to use an static domain name or IP, you should rename or remove the "/opt/bitnami/apps/mantis/bnconfig" file.

    mv installdir/apps/mantis/bnconfig installdir/apps/mantis/bnconfig.disabled
    

    Tabs end

    Manual Approach

    If you want to change the default URL from http://your_domain/mantis to http://your_domain, you should add a "DocumentRoot" entry in your application conf file. Edit the installdir/apps/mantis/conf/httpd-prefix.conf file to add this line and commenting the "Alias" entries. Modify the

    httpd_prefix.conf file content (substitute installdir with your actual installation directory, which is /opt/bitnami in Cloud Images and Virtual Machines):

    DocumentRoot "/installdir/apps/mantis/htdocs"
    # Alias /mantis/ "/installdir/apps/mantis/htdocs/"
    # Alias /mantis "/installdir/apps/mantis/htdocs"
    
    (...)
    

    Some applications also require changes in their configuration files or in the database.
     

    How to create a full backup of Mantis?

    Because BitNami stacks are self-contained, the simplest option for performing your backups is to copy or compress the BitNami Stack installation directory. To do so in a safe manner, you will need to stop all servers, so this method may not be appropriate if you have people accessing the application continously.

    linux_platform.pngOn Virtual Machines and Cloud Images:

    sudo /opt/bitnami/ctlscript.sh stop

    mac_platform.png

    On OS X:

    $ cd installdir
    $ ./ctlscript.sh stop
    $ cp -r installdir application-backup
    

    Or you can create a tarball:

    $ tar -czvf application-backup.tar.gz installdir
    

    Or a zip file:

    $ zip -r application-backup.zip installdir/*

    To restore this backup you only need to uncompress the backup in the same location. It is important to use the same path that was used when the stack was originally installed.

    For example if you have a backup in a Red Hat machine, you can copy it to an Ubuntu Linux machine (a different distro!) in the same location. Then start the servers and that’s all.

    On Virtual Machines and Cloud Images:

    $ sudo /opt/bitnami/ctlscript.sh start

    On OS X:

    $ cd installdir
    $ ./ctlscript.sh start
    

    You just need to be carefull to keep the same permissions for the files and folders. If you installed as root make sure that in the new machine you copy the files also as root. And this case, if you are also moving MySQL or PostgreSQL, you will need to create those users in the new machine (if they don't exist yet).

    win_platform.png On Windows you should follow the same process. Stop the servers using the shortcuts and copy the whole installation directory. To restore the system, copy the directory to a different Windows machine in the same location and follow these steps from a command prompt:

    $ cd installdir
    $ serviceinstall.bat INSTALL
    

    You can access your BitNami Application at the usual URL.

    If you want to create only a database backup, check the following link for MySQL /Components/MySQL#How_to_create_a_database_backup or for PostgreSQL /Components/PostgreSQL#How_to_create_a_database_backup.3f

    How to upgrade Mantis?

    It is strongly recommended that you create a backup before starting the update process. If you have important data, it is advisable that you create and try to restore a backup to ensure that everything works properly.

    There are two different ways to upgrade your application.

    1. If you want to upgrade the application and all Stack components PHP, Ruby, MySQL, Apache… You can follow the steps described at How to upgrade the full Stack migrating the data?
    2. In case you only want to upgrade the application code without modifying any other Stack components,  you should follow the guide which is in the application page itself.

    How to configure the email settings of Mantis?

    You can configure the SMTP  of your email provider by copying the email section in the /installdir/apps/mantis/htdocs/config_inc.php.sample file into the /installdir/apps/mantis/htdocs/config_inc.php. This section is copied bellow:

    # --- Email Configuration ---
    $g_phpMailer_method     = PHPMAILER_METHOD_MAIL; # or PHPMAILER_METHOD_SMTP, PHPMAILER_METHOD_SENDMAIL
    $g_smtp_host            = 'localhost';                  # used with PHPMAILER_METHOD_SMTP
    $g_smtp_username        = '';                                   # used with PHPMAILER_METHOD_SMTP
    $g_smtp_password        = '';                                   # used with PHPMAILER_METHOD_SMTP
    $g_administrator_email  = 'administrator@example.com';
    $g_webmaster_email      = 'webmaster@example.com';
    $g_from_email           = 'noreply@example.com';        # the "From: " field in emails
    $g_return_path_email    = 'admin@example.com';  # the return address for bounced mail
    # $g_from_name          = 'Mantis Bug Tracker';
    # $g_email_receive_own  = OFF;
    # $g_email_send_using_cronjob = OFF;
    

    For example, you can use a GMail account settings to send emails from the Mantis application.

     /* Email Settings */
        $g_phpMailer_method = PHPMAILER_METHOD_SMTP;
        $g_smtp_host = 'smtp.gmail.com';
        $g_smtp_port = 587;
        $g_smtp_connection_mode = 'tls';
        $g_smtp_username = 'example@gmail.com';
        $g_smtp_password = '**********';

    How to configure the timezone for Mantis?

    You can set the default timezone in the main "/opt/bitnami/php/etc/php.ini" file.

    date.timezone = "America/LosAngeles"

    This option could be also configured by the user in the Mantis preferences panel. If you change this timezone restart the Apache server.

    sudo /opt/bitnami/ctlscript.sh restart apache

    How to enable SSL?

    You can see how to configure Apache to enable SSL connections at How to enable SSL to access through https?

    How to debug Mantis errors?

    Once Apache starts, it will create two log files, the access_log and the error_log /installdir/apache2/logs directory or in /var/log/httpd if you are using Amazon Linux or Red Hat Enterprise cloud images.

    In Virtual Machines, Cloud Images and Ubuntu based Bitnami Cloud Hosting images installdir is /opt/bitnami.

    The access_log file is used to track client requests. When a client requests a document from the server, Apache records several parameters associated with the request in this file, such as: the IP address of the client, the document requested, the HTTP status code, and the current time.

    The error_log file is used to record important events. This file includes error messages, startup messages, and any other significant events in the life cycle of the server. This is the first place to look when you run into a problem when using Apache.

    If no error is found, you will see a message similar to:

    Syntax OK
    /installdir/ctlscript.sh : httpd started
    

    The main MySQL log file is created at /installdir/mysql/data/mysqld.log file.

    How to increase the allowed size of the uploaded files?

    You can modify the following option in the php.ini file to increase the allowed size for uploads:

    ; Maximum size of POST data that PHP will accept.
    post_max_size = 16M
    
    ...
    
    ; Maximum allowed size for uploaded files.
    upload_max_filesize = 16M
    

    How to set the password manually to an user?

    Mantis requires a correct mail configuration to allow users login because the temporary password is send in an email to the user's mail. If you didn't configure the SMTP or you cannot do it, you still can configure the password manually. To do it, you must follow the steps below:

    • Connect to your MySQL (via command line or phpMyAdmin)
    • Run this queries (remember to modify password and username for your desired values):
    USE bitnami_mantis;
    update mantis_user_table set password=md5('password') where username='username';
    • Try to login with the user

    How to integrate Subversion and Mantis?

    First of all, you need to have Subversion access through HTTP. You can do it using mod_dav, as explained here

    http://wiki.bitnami.com/Components/Subversion#How_to_see_the_Subversion_repository_from_the_web_browser.3f

    Then, create your repository using the following commands

    $ sudo mkdir /opt/bitnami/repositories
    $ sudo svnadmin create /opt/bitnami/repositories/myapp
    $ sudo chown -R daemon:bitnami /opt/bitnami/repositories

    Now, it's time to configure Mantis. To begin with, create a new user at mantis, which will be the one that the script will use. Open the /opt/bitnami/apps/mantis/htdocs/config_inc.php file and add the following lines:

    /* Subversion Connection*/
    
    $g_source_control_account = 'svn';
    $g_source_control_regexp = '/\b(?:bug|issue)\s*[#]{0,1}(\d+)\b/i';
    $g_source_control_set_status_to = RESOLVED;
    $g_source_control_set_resolution_to = FIXED;
    $g_source_control_fixed_regexp = '/\bfix(?:ed|es)\s+(?:bug|issue)?s*[#]{0,1}(\d+)\b/i';
    
     
    After that, you have to create the post commit script. It will call Mantis after a commit.
    nano /opt/bitnami/repositories/mantis/hooks/post-commit
    

    Copy the following commands to your post commit script

    #!/bin/bash                                                                     
    
    REPOS="$1"
    REV="$2"
    SVNLOOK="/opt/bitnami/subversion/bin/svnlook"
    
    auth=$($SVNLOOK author -r $REV $REPOS)
    dt=$($SVNLOOK date -r $REV $REPOS)
    changed=$($SVNLOOK changed -r $REV $REPOS)
    log=$($SVNLOOK log -r $REV $REPOS)
    n=$'\n'
    /opt/bitnami/php/bin/php -q /opt/bitnami/apps/mantis/htdocs/scripts/checkin.php <<< "Changeset [${REV}] by $auth, $dt$n$log$n$changed"
    

     

    It will add a line to the Mantis issue #number if your commit is like this

    svn commit -m "whatever issue #number whatever"
    

    Moreover, if the commit is like this

    svn commit -m "whatever fixed issue #number whatever"
    

    It will close the Mantis case with resolved status.

    To use it, don't forget to change your script permissions, so that it can be executed by daemon

    sudo chown daemon:bitnami /opt/bitnami/repositories/mantis/hooks/post-commit
    sudo chmod u+x /opt/bitnami/repositories/mantis/hooks/post-commit
    
    Tag page (Edit tags)
    • No tags
    Page statistics
    24138 view(s), 12 edit(s) and 7292 character(s)

    Comments

    You must login to post a comment.

    Attach file

    Attachments