MantisBT 安装部署过程
MantisBT软件安装部署过程
简介
Mantis是一个基于PHP技术的轻量级的开源缺陷跟踪系统,以Web操作的形式提供项目管理及缺陷跟踪服务。在功能上、实用性上足以满足中小型项目的管理及跟踪。更重要的是其开源,不需要负担任何费用。
部署环境
Mantis安装部署环境如下:
名称 | 版本号 | 描述 |
---|---|---|
Mantisbt | 2.16.0 | BugTracing 软件 |
操作系统 | CentOS 7 | RedHat 社区发行版 |
PHP | 7.2.8 | PHP 环境 |
部署过程
软件安装
安装PHP
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum -y install libicu libicu-devel libicu-doc
# yum -y install php70w php70w-gd php70w-xml php70w-mysql php70w-mbstring php70w-ldap php70w-xmlrpc php70w-odbc php70w-pear php70w-soap php70w-snmp
安装PHPMailer
https://github.com/Synchro/PHPMailer/releases/tag/v5.2.13
下载解压到/var/www/html/mantis/PHPMailer-5.2.13/
安装apache mysql等必要软件
MySQL的Server在CentOS 7上从默认软件列表中被移除了,用MariaDB来代替,所以这导致我们必须要去官网上进行下载,找到链接,用wget打开,然后再安装:
# wget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
# rpm -ivh mysql57-community-release-el7-9.noarch.rpm
# yum -y install mysql mysql-server mysql-devel
启动MySQL服务
# systemctl start mysqld
获取安装MySQL时的初始密码并登录MySQL
# grep 'temporary password' /var/log/mysqld.log
# mysql -u root -p
登录成功后修改密码,首先修改安全策略为0,然后将密码长度限制修改为1,最后修改密码
mysql> set global validate_password_policy=0;
mysql> set global validate_password_length=1;
mysql> set password for root@localhost=password('root');
安装apache httpd
# yum -y install httpd
# systemctl enable httpd //自启动
# systemctl start httpd //启动
安装mantis
下载
# cd /var/www/html
# wget https://jaist.dl.sourceforge.net/project/mantisbt/mantis-stable/2.18.0/mantisbt-2.18.0.zip
解压重命名
# tar zxvf mantisbt-2.16.0.tar.gz
# mv mantisbt-2.16.0 mantis
# mv mantis /var/www/html/
修改用户组
# chown -R apache:apache /var/www/html/mantis
创建数据库
[root@centos-7 html]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 5.7.23 MySQL Community Server (GPL)
Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> create database mantis;
Query OK, 1 row affected (0.00 sec)
mysql> grant all privileges on mantis.* to root@localhost identified by '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> set global validate_password_policy=0;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=1;
Query OK, 0 rows affected (0.00 sec)
mysql> grant all privileges on mantis.* to root@localhost identified by '123456';
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
[root@centos-7 html]#
安装
打开浏览器在地址栏输入 http://10.211.55.17:82/mantis – 格式为 http://IP:端口/mantis文件夹名称
,这时就会自动跳转到php安装向导的页面:
填好主机、密码等信息之后点击 Install/Upgrade Database 安装数据库。
登录
进入Mantis登录界面,输入用户密码:administrator/root ,登陆即可看到mantis主界面。
邮件配置
修改MantisBT/config/config_inc.php文件
$g_enable_email_notification = ON;
$g_administrator_email = 'mailuser'; # 邮箱地址
$g_webmaster_email = 'mailuser'; # 邮箱地址
$g_from_email = 'mailuser'; # 邮箱地址
$g_from_name = 'Mantis Bug Tracker';
$g_phpMailer_method = PHPMAILER_METHOD_SMTP;
$g_smtp_host = 'smtp.163.com'; # SMTP 服务器
$g_smtp_username = 'mailuser'; # 邮箱地址
$g_smtp_password = 'mailpwd'; # 邮箱密码
$g_use_phpMailer = ON;
$g_return_path_email = 'mailuser'; # 邮箱地址
中文配置
修改/var/www/html/mantis/config_defaults_inc.php文件,在该文件中找到语言设置的地方,修改$g_default_language,将’english’改为’chinese_simplified’。懒得找的话直接复制下面的命令也可以。
# sed -i -e "s/$g_default_language = 'auto'/$g_default_language = 'chinese_simplified'/g" /var/www/html/mantis/config_defaults_inc.php
问题解决
问题描述:配置完成后,无法发送邮件。
解决方法:
邮箱配置问题,添加本地邮箱服务器,设置本地邮箱,对于本地测试邮箱,设置$g_smtp_host=本地IP地址。
实例运行
- 为了便于理解,先给出BUG跟踪流程图:
- Mantis使用流程图:
- 新用户创建与登录
目前本系统的访问地址为:http://IP:port/mantis/login_page.php,用户可以通过首页显示的"注册一个新帐号"进行新用户注册。
然后点击邮箱内的激活邮件,进行用户名与密码的设置。也可以通过管理员创建新用户
管理员可以对用户的角色、所属的项目以及一些其他的情况进行对应的配置。
各种具体的配置以及各种角色用户的权限可参见管理员的管理视图。
操作流程
首先,说明一下系统中的角色和一般所对应的人员:观察者(复查员)、报告者(测试员)、升级者(审核员)、开发人员(开发员)、经理(项目经理)、管理员(系统管理员)。还要简单说明一下问题状态及相关含义(以上的两点只是中文理解和中文翻译的问题,可以在mantisbt-2.15.0/lang/strings_chinese_simplified.txt中修改):
- 新建:新提交的报告,默认状态为新建
- 反馈:修正的问题经过测试后仍不完善
- 认可:报告的问题确实存在
- 已确认:通常为项目经理确认时使用
- 已分配:分派给具体开发人员
- 已解决:修改后的问题,可以进行测试
- 已关闭:测试通过的问题,或者在报告周期内判定为无需修改的问题。
下面介绍一下简单的操作流程,这里以管理员和报告者作为示例,这里为了方便示例,示例中管理员包含了其他角色属性。观察者、升级者以及经理可以根据具体情况进行添加。
- 提交问题
权限:全部角色
必填信息:分类、摘要、描述、查看权限
选填信息:出现频率、严重性、优先级、选择平台设置、重现步骤、辅助、标签、上传文件。
问题单状态:新建
- 审核问题
权限:审核员、项目经理、(开发员)
可进行操作:添加附件、添加注释
问题单状态:新建 -> 已审核(认可),审核员对问题进行审核,并确认此问题;新建 -> 已关闭,审核员认为报告的问题不存在或无需修改。
- 确认问题
权限:项目经理
问题单状态:认可 -> 已确认,项目经理确认问题,确认后进入修改流程;认可 -> 反馈,项目经理对问题存在异议,反馈给审核者。
- 分派问题
权限:项目经理、开发员
问题单状态:已确认 -> 已分派,项目经理分派问题给相应的开发人员;已分派 -> 已分派,开发组长也可以给组员分派问题。
- 修复问题
权限:开发员
问题单状态:已分派 -> 已解决,分派给开发员的问题已修复及内部测试,可以提交业务测试时。
- 测试问题
权限:报告者
问题单状态:已解决 -> 已关闭,报告者对已解决的问题测试且测试通过;已解决 -> 反馈,报告者对已解决的问题测试,而测试未通过,开发员可对反馈的问题继续修复,再进入后续环节。
到此,整个流程结束。
说明:整个流程中,问题处于不同的状态,标记的颜色不同。