This is an old revision of the document!
Installation
- Unpack files to a web-enabled folder (such as “/var/www/html/support/bugs”).
- Set file permissions for installation:
$ chmod -R 644 ../bugs (or whatever the eventum directory is called) $ chmod 755 css/ customer/ docs/ images/ include/ js/ locks/ logs/ manage/ misc/ reports/ rpc/ setup/ templates/ $ chmod 777 templates_c $ chmod +t templates_c $ chmod 666 config.inc.php include/private_key.php $ touch error_handler.log setup.conf.php $ chmod 666 error_handler.log setup.conf.php $ chmod 777 misc/routed_emails $ chmod 777 misc/routed_notes $ chmod +t misc/routed_emails misc/routed_notes
- File permissions AFTER installation:
$ chmod 100 setup/
- Database creation:
$ mysql -u root -p mysql> CREATE DATABASE bugs; mysql> GRANT ALL ON bugs.* TO buguser@localhost IDENTIFIED BY 'bugpass';
- Point browser to default page, and follow instructions. For example: http://www.example.com/support/bugs
- Fill in required fields:
- Server hostname: www.example.com
- Eventum relative URL: /support/bugs
- Installation path: /var/www/html/support/bugs
- Mysql Server Hostname: localhost
- Mysql Database: bugs
- Mysql Username: bugsusr
- Mysql Password: bugspass
- SMTP Sender: eventum@example.com
- SMTP Hostname: localhost
- SMTP Port: 25
- Login to newly setup site:
username: admin@example.com password: admin
- Change email address and password for admin. Look for link “Admin User (Preferences)”.
- Create project. Go to “Administration > Manage Projects”.
- Create releases for project (dates must be in the future).
- ezFIT 4.05, etc.
- Create categories for project. For example:
- Autofit
- Customization
- Database
- Fine Tuning
- Fitting Information
- Fitting User Interface
- General
- Help System
- Installation
- Localization
- Patient Information
- Patient User Interface
- Products: All, All Programmables, All Digital, Instinct, Nueve, Paragon
- Create priorities for project:
- Critical
- High
- Low
- Medium
- Not Prioritized
- Create users that can manage projects.
- Create cron tab script to run every 5 min. The file is
/etc/cron.5min/eventum.sh
(and permissions:root.root rw–r–r–
):#! /bin/bash # script: /etc/cron.5min/eventum.sh # # This script performs mail routines and system checks for # the Eventum project and bug tracking system. It is supposed # to run at regular intervals (ie 5 min). # cd /var/www/html/support/bugs/misc # Mail Queue Process /usr/bin/php -q process_mail_queue.php # Email Download # Add new entries for additional accounts to process # These accounts must exist under "Manage Mail Accounts" #/usr/bin/php -q download_emails.php smayr localhost INBOX # Reminder System /usr/bin/php -q check_reminders.php # Hearbeat Monitor /usr/bin/php -q monitor.php
- Include an entry in /etc/crontab to have this:
*/5 * * * * root run-part /etc/cron.5min
- Alternatively, for the current user, create a user-based crontab (create using
$ crontab -e
) to have this:*/5 * * * * ~/scripts/eventum.sh
- Create related e-mail account to manage and associate with certain projects (optional):
- Associated Project: MyProject
- Hostname: localhost (or mail.example.com)
- Type: imap/notls (for Linux servers)
- Port: 143
- Username: issues (or smayr)
- Mailbox: INBOX
- Auto-Creation of Issues: Disabled (or Enabled)
- Run the following script to adjust the file permissions (optional, tailored to your organization):
#! /bin/bash # # This script sets the permissions for Eventum (bugtracker) # when installed or upgraded. # #TARGET="/var/www/html/eventum" #WEBUSR="apache" #WEBGRP="apache" TARGET="/var/www/html/support/bugs" WEBUSR="smayr" WEBGRP="web" cd $TARGET # system defaults #chown -R apache:apache * #chmod 755 config.inc.php #chmod 750 setup.conf.php #chmod 770 misc/queued_emails #chmod 770 misc/queued_notes #chmod 100 setup/ # example.com system defaults chown -R $WEBUSR:$WEBGRP * chmod 744 config.inc.php chmod 750 setup.conf.php chmod 770 templates_c/ chmod +t templates_c/ chmod 770 misc/routed_emails chmod 770 misc/routed_notes chmod +t misc/routed_emails misc/routed_notes chmod 100 setup/
- IMPORTANT: Adjust the settings to match file ownership/permissions in include/class.monitor.php in order to avoid error messages from the cron job. Modify contents of misc/monitor.php (version 1.6.x) (OR include/class.monitor.php (version 1.4))
$required_files = array( APP_PATH . 'config.inc.php' => array( 'check_owner' => true, 'owner' => 'smayr', //'apache', 'check_group' => true, 'group' => 'web', //'apache', 'check_permission' => true, 'permission' => 744, // 755, ), APP_PATH . 'setup.conf.php' => array( 'check_owner' => true, 'owner' => 'smayr', //'apache', 'check_group' => true, 'group' => 'web', // 'apache', 'check_permission' => true, 'permission' => 750, 'check_filesize' => true, 'filesize' => 1024 ), ); // comment this line to avoid messages 'ERROR: Could not find IRC bot pid from process list.' //Monitor::checkIRCBot();
- Change the height of the summary graphics if necessary: You can change that manually on /path-to-eventum/stats_chart.php
// A new graph $graph = new PieGraph(360,200,"auto");
- If graphics are not displaying, make sure GD libraries for PHP are installed. If not, use this command to install them:
$ yum install php-gd
2.0.1 Configuration Files
In Eventum 2.0.1 and later, the configuration files are now stored in /path-to-eventum/config. Here is a sample config.php file:
<?php /* vim: set expandtab tabstop=4 shiftwidth=4 encoding=utf-8: */ // +----------------------------------------------------------------------+ // | Eventum - Issue Tracking System | // +----------------------------------------------------------------------+ // | Copyright (c) 2003, 2004, 2005, 2006, 2007 MySQL AB | // | | // | This program is free software; you can redistribute it and/or modify | // | it under the terms of the GNU General Public License as published by | // | the Free Software Foundation; either version 2 of the License, or | // | (at your option) any later version. | // | | // | This program is distributed in the hope that it will be useful, | // | but WITHOUT ANY WARRANTY; without even the implied warranty of | // | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | // | GNU General Public License for more details. | // | | // | You should have received a copy of the GNU General Public License | // | along with this program; if not, write to: | // | | // | Free Software Foundation, Inc. | // | 59 Temple Place - Suite 330 | // | Boston, MA 02111-1307, USA. | // +----------------------------------------------------------------------+ // | Authors: Bryan Alsdorf <bryan@mysql.com> | // +----------------------------------------------------------------------+ // Contains constants defined for this specific eventum installation. // This file will not be overwritten when upgrading Eventum ini_set('display_errors', 0); error_reporting(0); // definitions of SQL variables define('APP_SQL_DBTYPE', 'mysql'); define('APP_SQL_DBHOST', 'localhost'); define('APP_SQL_DBPORT', 3306); define('APP_SQL_DBNAME', 'mydatabase'); define('APP_SQL_DBUSER', 'mydbuser'); define('APP_SQL_DBPASS', 'mydbpassword'); define('APP_DEFAULT_DB', APP_SQL_DBNAME); define('APP_TABLE_PREFIX', 'eventum_'); define('APP_NAME', 'Eventum'); define('APP_SHORT_NAME', APP_NAME); // used in the subject of notification emails define('APP_HOSTNAME', 'www.example.com'); define('APP_SITE_NAME', APP_NAME); define('APP_RELATIVE_URL', '/support/bugs/'); define('APP_BASE_URL', 'http://' . APP_HOSTNAME . APP_RELATIVE_URL); define('APP_COOKIE_URL', APP_RELATIVE_URL); define('APP_COOKIE_DOMAIN', null); define('APP_COOKIE', 'eventum'); define('APP_COOKIE_EXPIRE', time() + (60 * 60 * 8)); define('APP_PROJECT_COOKIE', 'eventum_project'); define('APP_PROJECT_COOKIE_EXPIRE', time() + (60 * 60 * 24)); define('APP_DEFAULT_PAGER_SIZE', 5); define('APP_DEFAULT_REFRESH_RATE', 5); // in minutes // new users will use these for default preferences define('APP_DEFAULT_ASSIGNED_EMAILS', 1);// if the user will recieve an email when an issue is assigned to him define('APP_DEFAULT_NEW_EMAILS', 0);// if the user will recieve an email when ANY issue is created define('APP_CHARSET', 'ISO-8859-1'); // define colors used by eventum define('APP_CELL_COLOR', '#255282'); define('APP_LIGHT_COLOR', '#DDDDDD'); define('APP_MIDDLE_COLOR', '#CACACA'); define('APP_DARK_COLOR', '#CACACA'); define('APP_CYCLE_COLORS', '#DDDDDD,#CACACA'); define('APP_INTERNAL_COLOR', '#9C494B'); // define the user_id of system user define('APP_SYSTEM_USER_ID', 1); // define the type of password hashing to use (MD5, MD5-64) define('APP_HASH_TYPE', 'MD5'); // if full text searching is enabled define('APP_ENABLE_FULLTEXT', true); define('APP_DEFAULT_LOCALE', 'en_US'); // 'native' or 'php'. Try native first, if you experience strange issues // such as language switching randomly, try php define('APP_GETTEXT_MODE', 'native');