Jenkins+maven持续集成平台部署指南1剖析

Jenkins+maven持续集成平台部署指南1剖析
Jenkins+maven持续集成平台部署指南1剖析

Jenkins+maven持续集成平台部署指南

一、持续集成的价值

1.持续集成中的任何一个环节都是自动完成的,无需太多的人工干预,有利于

减少重复过程以节省时间、费用和工作量;

2.持续集成保障了每个时间点上团队成员提交的代码是能成功集成的。换言之,

任何时间点都能第一时间发现软件的集成问题,使任意时间发布可部署的软

件成为了可能;

3.持续集成还能利于软件本身的发展趋势,这点在需求不明确或是频繁性变更

的情景中尤其重要,持续集成的质量能帮助团队进行有效决策,同时建立团

队对开发产品的信心。

二、实施过程

(一)、简介:持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能。本文正是从持续集成的基本概念入手,通过具体实例,介绍了如何基于Jenkins 快速搭建持续集成环境。

(二)、操作系统:windows server2003 R2 (域用户登录,安装clearcase)环境要求:加入域,安装clearcase这个不在这里赘述,使用clearcase域的用户登录Jenkins服务器

(三)、工具:

Jenkins(hudson)+clarcase UCM Plugin + Maven Plugin + Deploy Plugin

(四)、安装配置过程

1. Maven3的安装:

1) 把maven-3.0.2-bin.zip解压到D:\ apache-maven-3.0.2(或者你自己想解压的位置,)。然后配置操作系统的环境变量,这和以前的版本是一样的:(1)增加MAVEN_HOME变量,其值为D:\ apache-maven-3.0.2;(2)在Path 中加入%MAVEN_HOME%\bin

2) 测试是否安装成功,可以在命令行下输入mvn -v,出现如下界面,说明安装成功

2. 安装配置jenkins:

1) 下载、安装:

下载for windows安装包:

https://www.360docs.net/doc/4314699705.html,/content/thank-you-downloading-windows-installer ,把下载的zip包解压,双击解压的setup.exe文件,按照提示安装jenkins,安装完毕后jenkins将做为windows服务开机时自动启动,Jenkins安装完毕。在浏览器中输入 http://localhost:8080/jenkins/就可以看到Jenkins的界面了。

2) 配置Jenkins

Jenkins的配置比较重要,其和Maven的结合主要就是在这里来进行配置的,本文重点讲Jenkins的配置。

用上述的Jenkins的安装方法安装好Jenkins后,就可以通过浏览器

http://localhost:8080/jenkins来打开Jenkins的页面了,如下(如果你已经build 过工程的话,会在这里显示出来哪些成功了,哪些失败了)

Jenkins的全局配置

首先要安装所需插件,点击左边列表菜单“系统管理”,然后点击“管理插件”,在打开的页面中选择“可选插件”,选择安装Jenkins clearcase plugin、clearcase UCM plugin、Deploy plugin等所需要的插件,如图所示:

接下来要对Jenkins进行全局设置了,点击左边列表菜单“系统管理”,然后点击“系统设置”。可以对Jenkins进行系统配置,包括全局路径和变量设置等。如下图:

● 主目录:Jenkins储存所有的数据文件在这个目录下. 你可以通过以下几种方式更改(这个值在Jenkins运行时是不能更改的. 其通常用来确保你的配置是否生效):使用你Web容器的管理工具设置JENKINS_HOME环境参数.

在启动Web容器之前设置JENKINS_HOME环境变量.

(不推荐)更改Jenkins.war(或者在展开的Web容器)内的web.xml配置文件。

此配置的默认路径是C:\Users\Administrator\.jenkins(其点(.)前的路径是win7当前用户的工作路径),本人将其改为d:\jenkins\workspace,修改的方式是在操作系统的中增加环境变量JENKINS_HOME:d:\jenkins\workspace。

● 系统消息:这是展示在Jenkins主界面信息,可以写点随意的东西,比如HelloHudson,弄个Logo图片等等,它也支持HTML语言,可以把这个欢迎界面弄的相当漂亮,不详述。

● 生成等待时间:这个值是表示你可以让你的构建有等待时间,以防止在提交代码的过程中去开始构建。这里是全局的变量,也可以在每个项目里面去设定,因为每个项目等待时间的值肯定会不一样。(如果你想在这里设置可以查看右边的“帮助”)

● 启用安全:这里是Jenkins权限的相应设置,选择该项后,如下图:

这里我保留默认设置

● 全局属性:这块设置默认即可

● JDK设置

Jdk的设置是必须的,如果你在这里没有设置jdk的路径的话,在build工程的时候有可能会报类似以下的错误:

JDK的安装可以选择自动安装,也可以选择手工安装。我选择手工安装。我的JAVA_HOME是安装在C:\Java\jdk1.6.0_10这里的,所以直接填入即可。填写好的JDK 设置如下图:

● Maven设置

同样Maven的设置可以选择自动安装也可以选择手工安装。本人选择手工安装,安装后的界面如下图所示。

● 配置管理工具设置:设置CC的安装路径,和动态视图存储路径(共享目录路径)

Jenkins URL、邮件通知设置:

到此为止对于Jenkins的介绍就告一段落了,下面介绍新建任务相关的配置。

3. 新建任务

点击左上角的“新Job”,在“新建任务”页面需要选择任务的类型,Jenkins支持几种类型,我们选择“构建一个maven2/3项目”,并点击OK。见下图:

选择完任务类型后,进会进入详细配置界面,详细配置界面的配置项很多,大部分使用默认配置就可以了,下面就说说我们需要修改的几个地方:

1): 源码管理(Source Code Management)

因为我们使用的clearcase,所以这里选择UCM clearcase,并把view tag、view path、stream selector项目填写完成。注意:stream selector应为开发流名@\pvob名称,例如DS_dev@\ds_pvob 区分大小写。

2) : 配置自动构建的计划:

假设我们想让项目中每天12点和晚上8点自动构建一次,只需要在Build Triggers中选择Build periodically,并在Schedule中输入0 12,20 * * *。注:Schedule的配置规则是有5个空格隔开的字符组成,从左到右分别代表:分时天月年。*代表所有,0 12,20 * * * 表示在任何年任何月的任何天的12和20点的0分进行构建。

3) : 构建配置(POM):

此部分的配置关键是Root POM配置项,此部分可以是绝对路径,也可以是相对路径。此部分我选择的是相对路径,仅仅指定了pom.xml,按照上面的配置,我的pom.xml 文件的地址是“D:\jenkins\workspace\jobs\sdhs-dispatching-parent\workspace”,其由“主路径+jobs+任务名称+workspace”组成,如下图。

如果没有与SCM工具集成,也可以手工将相关的POM及代码复制到此路径下。

到此为止关键的配置就配置完毕了。回到Jenkins首页,并选择刚新建的任务,并点击“立即构建”,如下图:

构建完毕,会看到如下的界面:

界面上点击状态可以看到本次构建是否成功等信息;从变更集中可以看到本次构建clearcase中改变或增加的源代码;命令行可以看到Maven执行的时命令行的输出信

息,如果构建过程有错误,可以看到错误信息。

三、自动部署

看完上面发现Jenkins配置真的很简单,几分钟自动构建环境就出来了,但环境搭建好后发现1个问题,现在是能自动构建了,但是构建好的web.war都还是在Jenkins目录下,并没有发布到tomcat中,还需要手动copy过去?

要达到自动部署的目的,需要安装1个hudson的部署插件,转到Jenkins/系统管理/插件管理/可选插件,系统列出可用的所有插件,找到Deploy插件选中并点击安装按钮,等安装完毕后重启tomcat,就可以看到Deploy插件已经安装好了,安装好后的界面如下:

下载完毕以后,重新打开上面添加任务的配置界面,找到配置文件的最后,找到Post-build Actions(构建后的动作),如下图:

选中Depoly war/ear to container(发布war/ear到容器),在WAR/EAR files中填写打包后生成的war/ear文件名;在Container中选择Tomcat6.x;在Tomcat URL中填入http://localhost:808/sdhs-dispatching(要发布到的地址及应用上下文名称);如果tomcat 安装了自身的管理应用,则需要填入管理员名称和密码。

保存配置再重新构建一次,打开tomcat的webapps目录,发现web.war过来了。至此自动构建部署配置工作完成。

相关主题
相关文档
最新文档