Hudson:持续集成工具的安装、使用
Hudson简介
http://hudson-ci.org
以其强大的功能和易用的界面征服了大量的用户,它与主流的构建工具、版本控制系统以及自动化测试框架都能进行很好的集成。
很多组织和公司选择它作为自己的持续集成工具,如
http://hudson.jboss.org/hudson
https://grid.sonatype.org/ci/
Hudson还有一个优秀之处就是它提供了灵活的插件扩展框架,大量开发者基于这种机制对Hudson进行了扩展。
安装Hudson
注意:Hudson必须运行在JRE1.6或更高的版本上,安装时需要联网
Hudson only needs a Java 6 or newer runtime. An internet connection will be required if you want to be able to install and auto-update plug-ins
http://hudson-ci.org/
安装Hudson有两种方式:
方式一:直接运行war(This is mostly useful for testing purposes)
1:下载hudson-3.0.0.war
2:启动Hudson的方式是在命令行直接运行hudson.war
$cd /opt/maven
$java -jar hudson-3.0.0.war
$java -jar hudson-3.0.0.war --httpPort=8082
3:启动完成之后,在浏览器地址栏输入:http://localhost:8082/访问Hudson界面
方式二:安装rpm(For production we recommend using native packages for simplified install )
1:下载hudson-3.0.0-1.1.noarch.rpm
2:安装rpm
3:执行如下命令(需要root用户操作)
cd /opt/maven
rpm -ivh hudson-3.0.0-1.1.noarch.rpm
/etc/init.d/hudson start
nohup /etc/init.d/hudson start > /opt/maven/hudson_start.log 2>&1 &
查看hudson进程
ps -ef|grep hudson.war
4:启动完成之后,在浏览器地址栏输入:http://localhost:8080/访问Hudson界面
此rpm包做了如下工作:
Hudson will be launched as a daemon up on start. See /etc/init.d/hudson for more details.
The hudson user is created to run this service.
Log file will be placed in /var/log/hudson/hudson.log. Check this file if you are troubleshooting Hudson.
因为Hudson was written to work on unix-like platforms,所以不建议在windows上面安装,如果安装,则需要先UnxUtils
具体参见:http://wiki.eclipse.org/Hudson-ci/Installing_Hudson
打开http://172.168.27.70:8080/页面后,根据需要安装插件,如果选择的很多,将需要很久的时间
如果全部安装后,点击finished
hudson系统配置
进行系统管理--系统配置,配置JDK
JDK安装:
JDK-1.6 /usr/java/jdk1.6.0_33
全局MAVEN_OPTS
-Xms128M
-Xmx512M
如果打开系统配置报:
Problem accessing /checkURIEncoding. Reason: Tried to read incomplete UTF8 decoded String
此问题在IE下存在,而在firefox下面不存在,请使用firefox浏览器
创建Hudson任务
任务类型选择:构建一个自由风格的软件项目(Build a free-style software project)
不仅支持Maven项目,还支持其他类型的构建工具,如Ant、Shell
而对于Maven用户来说,两者最大的不同在于前者需要用户进行多一点配置,而后者会使用Hudson自带的Maven,且从项目的POM中获取足够的信息以免
去一些配置。
推荐使用free-style类型,这种方式更可控制,当任务出现问题的时候也更容易检查。
1:首先是项目的名称和描述
2:Discard Old Builds.该选项配置如何抛弃旧的构建。因为Hudson每执行一次构建任务,就可以保存相应的源代码、构建输出、构建报告等文件。
Days to keep builds
Max # of builds to keep
3:项目使用的JDK配置,这里可以选择的JDK就是用户在系统设置中预定义好的JDK(当前仅仅配置了一个,不用配置)
以上三项为基本配置
Hudson任务的源码仓库配置
4:Source Code Management
选择Subversion
svn://172.168.9.101/account/trunk
一般来说,该部分的其他选项保留默认值即可。
Hudson任务的构建触发配置
5:Build Triggers
选择poll SCM 周期性地轮询源码仓库,发现有更新的时候构建本项目,是最常用的构建触发方式
使用了Cron任务调度工具进行配置,如10分钟轮询一次
*/10 * * * *
6:Hudson任务的构建配置 Build
告诉Hudson使用运行Maven命令构建项目。从Add build step选择Maven3
选择Maven Version(选择bundle) 和 Goals如clean install
clean install -Dmaven.test.failure.ignore
此参数配置构建命令忽略测试。这样失败的测试就不会导致构建失败。即不稳定的构建,任务状态为黄色。
针对account项目,需要停断邮件服务(占用了25端口,而greenmail测试邮件绑定此端口)
ervice sendmail stop
chkconfig sendmail off
任务执行时
hudson在
/var/lib/hudson/jobs/
根据任务的名称构建项目
hudson绑定的Maven仓库地址是:
/var/lib/hudson/.m2/repository
使用的用户是hudson:hudson
配置Maven项目测试报告:
Post-build Actions
选择Publish JUnit test result report
Test report XMLs中输入:**/target/surefire-reports/TEST-*.xml
Hudson:持续集成工具的安装、使用相关推荐
- CI服务器-Hudson持续集成服务器的安装配置与使用
第一章 Hudson持续集成服务器的安装配置 IP:192.168.4.221 8G内存(Hudson多个工程在同时构建的情况下比较耗内存) 环境:CentOS 6.6.JDK7 Hudson不 ...
- Hudson 持续集成服务器的安装配置与使用
转自 吴水成 double 视频 Hudson 不需要用到数据库 Hudson 只是一个持续集成服务器(持续集成工具),要想搭建一套完整的持续集成管理平台, 还需要用到前面课程中所讲到的 SVN.M ...
- Hudson持续集成工具v3.3.3
介绍: Eclipse Hudson是用Java编写的持续集成(CI)工具,它在servlet容器(例如Apache Tomcat或GlassFish应用服务器)中运行.它支持SCM工具,包括CVS, ...
- 持续集成工具Jenkins安装及Jenkins离线状态解决
使用的虚拟机是centos6 1.前置条件 虚拟机已安装jdk和Tomcat,这里只介绍安装Tomcat,安装jdk网上版本很多,大家可以自行查阅 2.安装Tomcat (1)下载地址: https: ...
- 持续集成工具之Hudson
一.什么是持续集成 持续集成的核心概念 CI 过程会经常构建软件组件:在许多情况下,每当源代码存储库(比如 Subversion 或 ClearCase)中的代码发生变化时,都要构建软件组件.CI ...
- Hudson之——持续集成服务器的安装与配置
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/71076496 IP:192.168.4.221 8G 内存(Hudson 多个工程 ...
- jenkins 忘记密码_持续集成工具Jenkins 在CentOS系统下安装
一.Jenkins简介 Jenkins是一个开源的持续集成工具,用于持续.自动的构建.测试.发布项目.Jenkins使用Java开发,可与版本管理工具集成使用. Jenkins支持UI操作来部署流水线 ...
- 中小型研发团队架构实践:高效率、低风险,一键发布并测试的持续集成工具Jenkins...
一.Jenkins 简介 \\ 当每月发布次数变得越来越多时,如超过 200 次,发布工作人员的工作量会翻倍,此时由人工发布操作失误引起的风险会变得越来越大.为了提高项目的发布效率,也为了降低由人工操 ...
- java 持续集成工具_Jenkins集成式项目控件下载
Jenkins是一款基于Java开发的持续集成工具,它是一个开源软件项目,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能, 主要可用于持续.自动地构建/测试软件项目,如CruiseContr ...
最新文章
- 关于jsp基础知识题目(一)
- JavaScript学习一
- JSsearch实现在购物网站输入后推荐联想的效果
- 根据数据库中的值用js设置RadioButtonList选中与否
- 第一次连接mysql失败_MySQL 远程连接失败
- 围观神龙架构首次开箱,现场直播暴力拆机
- JavaScript面试小知识
- 智能一代云平台(十九):选修课---类似秒杀的高并发业务
- Android FrameLayout 帧布局
- 扇贝有道180914每日一句
- 真好玩python教孩子学编程_Python真好玩:教孩子学编程(全彩印刷))简介,目录书摘...
- 大学十年(一个程序员的路程)
- C语言实现lagrange theorem拉格朗日定理的算法(附完整源码)
- 泛泰binx和ota升级包下载工具Android版[2013.6.7提供源代码]
- 人民币符号输入的几种方法
- 图钉能按到墙上吗_图钉怎么钉在墙上
- 发送邮件(支持所有smtp协议邮件发送)
- 蓝牙文件传输服务linux,openwrt蓝牙文件传输
- java中流_Java中流的有关知识点详解
- 一文读懂机器学习,大数据/自然语言处理/算法全有了
热门文章
- 需求评审五个维度框架分析及其带来的启示-2-框架原理
- unity 草 可以一棵棵种吗?_种黄瓜这几种做法是错误的,却还有好多人在犯
- php添加linux定时任务,PHP与Linux定时任务
- 特邀丨前阿里巴巴产品运营专家、中国计算机学会专业会员,揭秘增长共同点
- 神策 FM | 我绝对想要那个 VS 我可能想要那个
- 安装Fontawesome4字体图标
- 干货!不得不知的UI界面中“行为召唤按钮”设计秘诀
- Android JNI入门第一篇——HelloJni
- Git修改分支名称(local remote)
- Ubuntu免安装配置MySQL