小团队开发管理工具:gitlab+redmine+testlink+jenkins

原创 2013年12月04日 11:13:24

由于工作需要,需要为团队搭建一个高效可用的开发管理平台。现在可用的开发管理工具很多开源的、商业的,网上也有很多博客和文章。经过2周的学习比较,再结合自己的项目特点,最后选定工具集:gitlab+redmine+testlink+jenkins。

项目管理和bug跟踪工具:redmine。整个项目组一直使用的管理工具,这次只是做了升级(2.4.0)

代码管理工具:gitlab。原有的代码管理使用的是subversion,这次改用git的原因是需要开发人员支持离线操作。

测试管理工具:testlink。测试管理工具是新加入的,我唯一能找到的原因是开源、免费、可以和redmine集成

持续集成工具:jenkins。持续集成工具是新加入的,因为会多项目并行,同时采用分布式设计和开发,所以在开发和测试阶段项目部署比较频繁。我们原来都是手动操作发布,相当麻烦、耗时,并且出错率还很高。所以这次使用了持续集成工具,为什么选用jenkins,只是看到了网上介绍感觉安装简单、操作简单、配置简单。呵呵大笑一切从简嘛


这次工具集的搭建涉及到的工具比较多,所以下面把我所用到的软件包和环境罗列出来,方便大家查找:

环境:

ubuntu server 12.04

ip:192.168.1.18

软件包:

ruby 2.0.0

apache2

php 5.5.6 (必须大于5.4)

redmine 2.4.0

testlink 1.9.9

jenkins ver.1.540

git 1.8.5.rc2 (必须大于1.8)

gitlab 6.2.4

gitlab-shell 1.7.8

以上就是这次搭建平台最终运行所需的软件包,当然这里并不是在安装过程中用到的所有(比如:g++,ruby中的gem等,由于这些只是在安装工程中使用,对我们最终运行没有太大影响,并且在安装的时候对版本的需求都会有提示,这里没有罗列出来)。建议:redmine里面有很多的插进,可以方便大家在项目中的使用。

对于一些安装过程,如果没有别的要求和错误,我会直接引用官方安装过程或者其他可用的安装文章。好了,我们开始吧:

一、gitlab安装:

gitlab安装直接参考官方安装文档就可以了https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md

根据这个文档 ruby 2.0.0 也安装好了

二、jenkins安装:

参考:https://wiki.jenkins-ci.org/display/JENKINS/Installing+Jenkins+on+Ubuntu

	wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
	sudo sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
	sudo apt-get update
	sudo apt-get install jenkins

这样安装过后系统会自动加入jenkins服务,使用 sudo /etc/init.d/jenkins [start|stop|restart] 就可以启动停止jenkins了

三、redmine安装:

四、testlink安装:

php5.5.6安装:

apt-get install python-software-properties
sudo add-apt-repository ppa:ondrej/php5
sudo apt-get update
sudo apt-get install php5-cli php5-fpm php-pear php5-mysql libcurl4-openssl-dev
sudo apt-get install php5-dev
sudo pecl install pecl_http
顺带附上将php5.5.6降到php5.3的方法:


#安装

ppa-purge apt-get install ppa-purge 

#移除源 

ppa-purge ppa:ondrej/php5 apt-get update && apt-get upgrade -y && apt-get autoremove -y && apt-get autoclean -y

五、各个平台集成:

各平台集成方案


1、gitlab和jenkins集成

http://hyhx2008.github.io/li-yong-jenkinsgitlabda-jian-chi-xu-ji-cheng-cihuan-jing.html

2、redmine和gitlab集成

这里集成需要注意,redmine在选择git版本库的时候,由于不同用户运行会遇到权限问题,有三种解决方案

a、改已经存在的GIT版本的文件读写权限:改为redmine运行用户可以访问;

b、将GIT版本库以redmine运行用户的身份,创建在redmine安装目录中;

c、把git代码库目录试试同步到redmine可以访问的目录,即为redmine创建一个代码库。这里有两种方案可用

c1、使用git的hooks功能

c2、使用目录同步工具

这里根据我们的情况,我选择 c2 方案,使用工具是rsync+inotify-tools,同时出发redmine自动抓取。脚本如下:

#!/bin/sh
src=/home/git/repositories
des=/home/redmine/repo
/usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format  '%T %w%f' \
-e modify,delete,create,attrib \
${src} \
| while read  file
        do
                rsync -ac ${src}/ ${des} &&
                echo "${src} was rsynced"
                echo "---------------------------------------------------------------------------"
                rake -f /home/redmine/redmine-2.4.0/Rakefile RAILS_ENV=production redmine:fetch_changesets
        done

3、redmine和testlink集成


4、redmine和jenkins集成


5、jenkins和testlink集成




Redmine与Gitlab深度集成

一.要求 在redmine的issue页面能够看到该问题相关的提交记录 gitlab有提交后自动触发Redmine获取更新 通过commit message能够关联Redmine的iss...
  • hxpjava1
  • hxpjava1
  • 2017年11月13日 17:13
  • 261

CentOS7安装Git与RedMine及整合(提交代码自动更新RedMine状态)

前言         最近公司想把SVN上的代码,全部迁移到现在更流行的Git服务器上去。由于公司的项目代码都属于商业机密,所以不能选择开源的GitHub,而不开源是需要Money的,而公司又正好有A...
  • coolcooldool
  • coolcooldool
  • 2016年11月28日 15:48
  • 1230

centos7下使用gitlab+redmine+jenkins

gitlab比svn好用,准备使用gitlab+redmine,把代码往gitlab迁移. 机器ip 192.168.1.146 系统 centos 7.1一.gitlab安装这次使用的是...
  • u012375924
  • u012375924
  • 2015年08月28日 12:04
  • 3960

Ubuntu 14.10集成redmine和gitlab(bitnami stacks)

为了利用redmine的项目管理功能,和gitlab的git仓库,需要集成这两个工具。 1. 准备工作  首先下载 bitnami的一键安装包: bitnami-gitlab-8.5.7-0-lin...
  • northwesternwind
  • northwesternwind
  • 2016年04月09日 23:50
  • 1774

CentOS7安装Git与RedMine及整合(提交代码自动更新RedMine状态)

前言         最近公司想把SVN上的代码,全部迁移到现在更流行的Git服务器上去。由于公司的项目代码都属于商业机密,所以不能选择开源的GitHub,而不开源是需要Money的,而公司又正好有A...
  • coolcooldool
  • coolcooldool
  • 2016年11月28日 15:48
  • 1230

Redmine与Gitlab深度集成

一.要求 在redmine的issue页面能够看到该问题相关的提交记录 gitlab有提交后自动触发Redmine获取更新 通过commit message能够关联Redmine的iss...
  • hxpjava1
  • hxpjava1
  • 2017年11月13日 17:13
  • 261

项目管理和缺陷跟踪工具——Redmine

项目管理一直是IT公司,尤其是现在互联网创业公司中一直让大家头疼的事情,团队虽然不大,可是要做的事情不少,经常是女人当男人用,男人当牲口用,每个人都是一箩筐的事情,更不要说什么优先级了,可能每天都在做...
  • goodrain2016
  • goodrain2016
  • 2016年10月24日 16:09
  • 2235

TestLink测试用例管理工具一般使用流程

(一)预览 1. 创建项目-> 2. 创建需求(略过)-> 3. 创建计划-> 4. 创建用例-> 5. 版本管理(构建Build)-> 6. 给需求指派用例(可能不止一个,略过) -> 7. 给计划...
  • test121210
  • test121210
  • 2015年06月30日 23:14
  • 2740

使用nginx反向代理docker中的git和redmine

最近因为工作需要,需要在服务器上安装配置docker,并且在docker上安装配置gitlab和redmine,并且使用nginx对他们进行反向代理,使得在公司局域网内客户端浏览器上输入http://...
  • wgh966966
  • wgh966966
  • 2017年01月16日 09:50
  • 713

【腾讯TMQ】测试管理平台大比拼

工欲善其事,必先利其器。测试管理平台就是测试人员的“器“,找到一个合适的管理平台使测试人员事半功倍。本文介绍了目前流行的测试管理工具QC、 Mantis、 BugZilla、TestLink、Redm...
  • TMQ1225
  • TMQ1225
  • 2016年09月06日 14:58
  • 2826
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:小团队开发管理工具:gitlab+redmine+testlink+jenkins
举报原因:
原因补充:

(最多只允许输入30个字)