持续集成(CI)工具------Hudson/Jenkins(Continuous Integration)安装与配置详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/wanghantong/article/details/40985653

本文允许转载,但请标明出处:http://blog.csdn.net/wanghantong/article/40985653/, 版权所有

文章概述:

一、 描述了持续集成工具Hudson的安装与配置

二、 描述了Git 、Maven环境的安装与配置

三、 描述了扩展邮件通知及其配置方法

四、 描述了jira的配置

一、Hudson简介

Hudson是Jenkins的前身,是基于Java开发的一种持续集成工具,用于监控持续的软件版本发布/测试项目

下载地址:http://eclipse.org/downloads/download.php?file=/hudson/war/hudson-3.2.1.war

安装方式:只要将下载的hudson-3.2.1.war部署到Web容器(Servlet容器)中,而且不需要数据库的支持

存放目录:hudson需要一定的硬盘空间来执行编译和保存数据,默认的存储地址是:~/.jenkins   OR ~/.hudson

修改存储地址:在启动servlet容器之前配置环境变量"JENKINS_HOME"其值是新的存储地址

运行方式:我们将下载的war包解压缩,在其依赖的libs文件夹中我们发现jetty容器,参见下图!

由此可见,我们直接运行Hudson即可:进入到hudson-3.2.1.war所在的目录下,运行

java -jar hudson-3.2.1.war --httpPort=8765

注意--   是两个- ,httpPort=8765  Port要大写= 左右没有空格,8765为运行的端口号,随意指定

成功启动后,我们会看到:

访问方式:http://localhost:8765/

如果访问失败,请根据上述的注意进行查找改错,一般情况下都是这些小错误引起

Hudson配置:进入http://localhost:8765/manage,进行系统的相关配置

可配置项:

1.系统设置:http://localhost:8765/configure

基于Java的项目:

1.1 首先安装JDK,配置JAVA_HOME

这里建议大家自己手动安装JDK,然后进行路径配置,不推荐使用Hudson提供的   自动安装 选项,这里可以配置多个版本的JDK


1.2 安装Git,配置Git环境

Git下载地址:http://git-scm.com/download/win

在Windows下,Git为.exe可执行文件,执行安装,并配置环境变量

在Hudson中进行配置Git,Hudson也支持多个版本的Git配置

1.3 下载安装配置Maven

Maven下载地址:http://maven.apache.org/download.cgi

建议直接下载.zip格式的即可,然后直接解压缩安装,并配置Maven环境变量



1.4 配置extended email notification 扩展的邮件通知


邮件表达式详解:
${BUILD_LOG, maxLines, escapeHtml}  - 显示最终构建日志。
maxLines    显示该日志最多显示的行数,默认250 行。
escapeHtml  - 如果为true ,格式化HTML 。默认false
${BUILD_LOG_REGEX, regex, linesBefore, linesAfter, maxMatches, showTruncatedLines, substText, escapeHtml, matchedLineHtmlStyle}  - 按正则表达式匹配显示构建日志的行数。 
匹配符合该正则表达式的行数。参阅java.util.regex.Pattern ,默认“(?i)\b(error|exception|fatal|fail(ed|ure)|un(defined|resolved))\b”
linesBefore  - 包含在匹配行之前的行编号。行数会与当前的另一个行匹配或者linesAfter 重叠,默认0
linesAfter  - 包含在匹配行之后的行编号。行数会与当前的另一个行匹配或者linesBefore 重叠,默认0
maxMatches  - 匹配的最大数量,如果为0 ,则包含所有匹配。默认为0
showTruncatedLines  - 如果为true ,包含[...truncated ### lines...] 行。默认为true
substText  - 如果非空,把这部分文字插入该邮件,而不是整行。默认为空。
escapeHtml  - 如果为true ,格式化HTML 。默认false
matchedLineHtmlStyle  - 如果非空,输出HTML 。匹配的行数将变为<b style=”your-style-value”> html escaped matched line </b> 格式。默认为空。
${BUILD_NUMBER}  - 显示当前构建的编号。
${BUILD_STATUS}  - 显示当前构建的状态( 失败、成功等等)
${BUILD_URL}  - 显示当前构建的URL 地址。
${CHANGES, showPaths, format, pathFormat} - 显示上一次构建之后的变化。
showPaths    如果为  true, 显示提交修改后的地址。默认false
format    遍历提交信息,一个包含%X 的字符串,其中%a 表示作者,%d 表示日期,%m 表示消息,%p 表示路径,%r 表示版本。注意,并不是所有的版本系统都支持%d %r 。如果指定showPaths 将被忽略。默认“[%a] %m\n”
pathFormat  - 一个包含“%p” 的字符串,用来标示怎么打印字符串。
${CHANGES_SINCE_LAST_SUCCESS, reverse, format, showPaths, changesFormat, pathFormat}  - 显示上一次成功构建之后的变化。
reverse  - 在顶部标示新近的构建。默认false
format - 遍历构建信息,一个包含%X 的字符串,其中%c 为所有的改变,%n 为构建编号。默认”Changes for Build #%n\n%c\n”
showPaths, changesFormat, pathFormat    分别定义如${CHANGES} showPaths format pathFormat 参数。
${CHANGES_SINCE_LAST_UNSTABLE, reverse, format, showPaths, changesFormat, pathFormat}  - 显示显示上一次不稳固或者成功的构建之后的变化。
reverse  - 在顶部标示新近的构建。默认false
format  - 遍历构建信息,一个包含%X 的字符串,其中%c 为所有的改变,%n 为构建编号。默认”Changes for Build #%n\n%c\n”
showPaths, changesFormat, pathFormat - 分别定义如${CHANGES} showPaths format pathFormat 参数。
${ENV, var}    显示一个环境变量。
var –   显示该环境变量的名称。如果为空,显示所有,默认为空。
${FAILED_TESTS}  - 如果有失败的测试,显示这些失败的单元测试信息。
${JENKINS_URL}  - 显示Jenkins 服务器的地址。( 你能在系统配置页改变它)
${HUDSON_URL}  - 不推荐,请使用$JENKINS_URL
${PROJECT_NAME} - 显示项目的名称。
${PROJECT_URL}  - 显示项目的URL
${SVN_REVISION}  - 显示SVN 的版本号。
${CAUSE} - 显示谁、通过什么渠道触发这次构建。
${JELLY_SCRIPT, template} - 从一个Jelly 脚本模板中自定义消息内容。有两种模板可供配置:HTML TEXT 。你可以在$JENKINS_HOME/email-templates 下自定义替换它。当使用自动义模板时,”template” 参数的名称不包含“.jelly”
template - 模板名称,默认”html”
${FILE, path}  - 包含一个指定文件的内容
path - 文件路径,注意,是工作区目录的相对路径。
${TEST_COUNTS, var}  - 显示测试的数量。
var –   默认“total”
  • total -所有测试的数量。
  • fail -失败测试的数量。
skip - 跳过测试的数量。

1.5 Jira配置

这里只简述在Hudson中如何配置Jira,关于Jira的具体安装与配置参见博客Jira配置详解一节


1.6 其余配置

Hudson还支持SVN、Ant、Shell,这里不详细概述了,上述的配置是作者目前在用的配置


猜你喜欢

转载自blog.csdn.net/wanghantong/article/details/40985653