您的位置:首页 > 运维架构

BUG 管理系统运维记录(bugfree)

2014-03-12 00:15 302 查看
BUG 管理系统运维记录(bugfree)创建时间: 2013-06-18最新版本: 1.3制作者: Teemo君release 1.1 2013-06-08 文档初生成release 1.2 2014-03-07 二次修改,添加维护记录release 1.3 2014-03-11 BUG管理系统,再次修改放在blog
目的: 记录工作轨迹,积累工作经验. 通过知识积累形成自己的运维体系。 工作过两间公司,都与开发打交道,需要为开发提供帮助,BUG管理系统是软件开发必不可少的应用, 对软件生命周期直到很重要作用,运维必须掌握的应用之一。 文档已经形成一年多,不会对目前公司造成危害,可以通过外网发布。

需求:
cc company 属于创新型通信行业公司,旗下开发加测试有n+2人,需要拥有自己的bug管理跟踪系统,以解决软件开发遇到的问题. 当前使用eazybug来维护,可是些软件需要收费和人员限制,出于成本和扩展性出发,需要选择开源软件在公司内服搭设服务器,以满足公司开发需求。 经过之前比对zentao,qc,JIRA等项目软件,其中QC属于重量级,安装麻烦且还要收费,排除;JIRA软件也不错,反正也由于某种原因,排除;zentao 禅道管理软件轻量级,小清新,可是测试说有点复杂。最后通过比对软件易用性和简单性,出于单纯只是解决bug管理的功能,最终选择使用bugfree软件.
软件介绍: BugFree是借鉴微软的研发流程和Bug管理理念,使用PHP+MySQL独立写出的一个Bug管理系统。简单实用、免费并且开放源代码(遵循GNU GPL).命名BugFree 有两层意思:一是希望软件中的缺陷越来越少直到没有,Free嘛;二是表 示它是免费且开放源代码的,大家可以自由使用传播。
补充说明: 由于版权纠纷,bugfree已经处于停止开发和技术支持,现在其官网和相关技术文档都少之又少了.之前的开始人员已经转入到zentao的开发系统中了,而且zentao项目管理系统更加优秀,功能更加强大,在yc公司有一年使用体验,推荐. 也是因为资料少之又少,写这个文档也是了留下技术资料,以备将来使用.

################################分界线##########################################1. 软件部署平台RHEL 5.5 64位 2.6.18内核稳定版本
2. 所需相应软件下载bugfree3.0.4.zipphp-json-ext-1.2.1.tar.bz2
3. 安装说明 bugfree 是由php开发,部署在LAMP平台即可,并且bugfree需要php-json扩展库的支持,以达到数据交互和展现,而这个软件包是系统默认安装的,而且yum源也没有json,需要我们手动编译.出于业务的简单性,使用yum方式安装lamp软件系列,方便管理维护.
4. 安装LAMP涉及软件# rpm -qa | grep phpphp-cli-5.1.6-27.el5php-pdo-5.1.6-27.el5 这个软件包特别注意下php-pecl-json-1.2.1-4.el5php-common-5.1.6-27.el5php-devel-5.1.6-27.el5php-mysql-5.1.6-27.el5php-gd-5.1.6-27.el5php-pear-1.4.9-8.el5php-5.1.6-27.el5
# rpm -qa | grep mysqlmysql-server-5.0.77-4.el5_4.2php-mysql-5.1.6-27.el5mysql-devel-5.0.77-4.el5_4.2mysql-devel-5.0.77-4.el5_4.2mysql-5.0.77-4.el5_4.2mysql-5.0.77-4.el5_4.2# rpm -qa | grep httpdhttpd-2.2.3-43.el5
5. 根据自己需求,找到对应版本的php-json库下载地址: wgethttp://pkgs.fedoraproject.org/repo/pkgs/php-json/php-json-ext-1.2.1.tar.bz2/e06e701412a055f3372775216ec3d604/php-json-ext-1.2.1.tar.bz2
6. 之前的LAMP平台准备好,重启mysqld and httpd服务器,接着执行相关操作,安装php-json扩展#解压文件,并进行到目录# tar -xjf php-json-ext-1.2.1.tar.bz2
#进入当前路径,并使用当前系统phpize刷新configure文件# cd php-json-ext-1.2.1# phpize Configuring for:PHP Api Version: 20041225Zend Module Api No: 20050922Zend Extension Api No: 220051025
#可以看到以configure等文件已经刷新到当前的时间了.# lltotal 1468-rw-r--r-- 1 10008 10008 66540 Jun 18 12:13 acinclude.m4-rw-rw-r-- 1 10008 10008 298049 Jun 18 12:13 aclocal.m4drwxr-xr-x 2 root root 4096 Jun 18 12:13 autom4te.cachedrwxrwxr-x 2 10008 10008 4096 Jun 18 12:13 build-rwxr-xr-x 1 10008 10008 42037 Jun 18 12:13 config.guess-rw-rw-r-- 1 10008 10008 1610 Mar 31 2006 config.h.in-rw-rw-r-- 1 10008 10008 2139 Jan 31 2006 config.m4-rwxr-xr-x 1 10008 10008 30253 Jun 18 12:13 config.sub-rwxrwxr-x 1 10008 10008 658032 Jun 18 12:13 configure
#进行默认当前路径编译,可以看到会生成一个我们需要的模块# ./configure # makeLibraries have been installed in: /root/php-json-ext-1.2.1/modulesIf you ever happen to want to link against installed librariesin a given directory, LIBDIR, you must either use libtool, andspecify the full pathname of the library, or use the `-LLIBDIR'flag during linking and do at least one of the following: - add LIBDIR to the `LD_LIBRARY_PATH' environment variable during execution - add LIBDIR to the `LD_RUN_PATH' environment variable during linking - use the `-Wl,--rpath -Wl,LIBDIR' linker flag - have your system administrator add LIBDIR to `/etc/ld.so.conf'See any operating system documentation about shared libraries formore information, such as the ld(1) and ld.so(8) manual pages.----------------------------------------------------------------------Build complete.(It is safe to ignore warnings about tempnam and tmpnam).
#由此我们可以知道,其实YUM安装的LAMP创建的模块放置在/usr/lib64/php/modules/,上面的configure记录也不太可靠.# make installInstalling shared extensions: /usr/lib64/php/modules/# ll /usr/lib64/php/modules/json.so -rwxr-xr-x 1 root root 92750 Jun 18 12:14 /usr/lib64/php/modules/json.so
7. php-json 验证做完进行数据确认,是运维良好的习惯。重启httpd服务器以加载PHP配置,通过简单的phpinfo函数,以确认已经支持json

@这是就不放图,大家都知道,需要通过php页面,了解此处php已经支持相关模块

################################分界线##########################################8. 实际安装bugfree软件#解压目录,并移到httpd DocumentRoot下,再通过浏览器访问以下路径:# unzip bugfree3.0.4.zip# mv bugfree3.0.4 /var/www/html/bugfree# chown -R apache.apache /var/www/html/bugfree
9. 访问下面连接,即可进行页面安装工作,根据自己情况调整http://192.168.0.107/bugfree/install
bugfree安装十分简单,只需要三个步骤即可.9.1 环境检查,如果有不符合的内容,按要求添加即可.上面如果没有安装要求准备LAMP的软件,在环境检查时会报错的。





9.2 在数据库创建相应用户,界面会往自动调用,往里面创建表格.细看一下那个创建数据表的文件,所创建的表格绝大部分是INNODB存储引擎创建的表格.create database bugfree;grant all privileges on bugfree.* to bugfree@localhost identified by "xxxx";

9.3 填写数据库连接信息,可以让应用与数据库交互





9.4 经过几分钟等待,就可以完成安装.




9.4 访问页面,这是最新版本的bugfree 3.0.4,不知道现在还有软件下载不http://192.168.0.107/bugfree目前用户: admin密码: xxx请更改相应的密码




9.5 打开页面效果图.



10. 邮件通知功能添加
保证sendmail服务器正常启动,保证域名能被DNS正常解释修改相对应的配置文件# sed -n '105,117p' /var/www/html/bugfree/protected/config/main.php array ( 'on' => '1', 'from_address' => 'xxxxxx', 'from_name' => 'BugFree', 'send_method' => 'SMTP', 'send_params' => array ( 'host' => 'xxxx', 'smtp_auth' => true, 'username' => 'xxxx', 'password' => 'xxxx', ), ),
11. bugfree 维护记录11.1 注意应用所在目录的读写权限,因为apache会对目录/var/www/html/bugfree内容进行读写操作,权限不对,会造成页面访问不畅。此处当时通过查看/var/log/httpd下面的错误和访问日志分析解决
11.2 bugfree发送不了邮件,对应应用日志位置,可以检查下面文件内容,发现和解决问题重启检查下上面那个main.php文件内容验证邮件用户正常发信最后发现是由于/etc/resolv.conf 没有内容,加入DNS记录,可是没有把httpd重启,应用无法连接DNS进行MX解析# tail -2 /var/www/html/bugfree/protected/runtime/application.log2014/03/11 11:18:35 [error] [bugfree.ProductService] mail send failed:"Language string failed to load: data_not_accepted"2014/03/11 11:20:32 [error] [bugfree.ProductService] mail send failed:"Language string failed to load: data_not_accepted"
12. 目前bugfree几乎在网络上绝迹,而且相关开发团队出现矛盾,此文档只是相关维护记录,感谢相关开发者贡献,才能让用户用上这个软件,致敬。 这个软件挺稳定的,用了一年多9个月,满足公司需求,当然后期需求复杂化,我也挺赞同迁移到升级版本的 zentao禅道。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息