`

Jenkins+Maven+SVN搭建自动部署,自动测试环境

阅读更多

《目录》

一、安装Jenkins

二、配置Jenkins

三、自动编译

四、自动测试

五、自动部署

一、安装Jenkins

地址http://mirrors.jenkins-ci.org/ 下载适合的Jenkins 版本。

Windows 最新稳定版的Jenkins 地址为:http://mirrors.jenkins-ci.org/windows-stable/jenkins-1.409.1.zip

Jenkins 1.409.1 版解压,把得到的war 包直接扔到tomcat 下,启动tomcatJenkins 就安装完毕,是不是很简单啊。

二、配置Jenkins

1 、打开http://10.3.15.78:8080/jenkins/ ,第一次进入里面没有数据,我们需要创建job ,我们这有2 个项目,需要创建2jobhttp://10.3.34.163:9890/jenkins/

2 、点击左上角的new job ,在new job 页面需要选择job 的类型,Jenkins 支持几种类型,我们选择“构建一个maven2/3 项目”

3 、点击OK 按钮后,进会进入详细配置界面,详细配置界面的配置项很多,不过不用怕,大部分使用默认配置就可以了,下面就说说我们需要修改的几个地方:

3.1Source Code Management

因为我们使用SVN 管理源码,所以这里选择Subversion ,并在Repository URL 中输入我们的SVN 地址:

http://10.3.34.163:9880/XXXX/trunk/

输入SVN 库的URL 地址后,Jenkins 会自动验证地址,并给予提示。

点击红色字体 部分的enter credential 链接,进入页面

设置好访问SVN 库的用户名和密码后,点击OK 按钮

设置成功。点击Close 按钮,返回之前的Source Code Management 页面。此时不再有红色警告信息了。

3.2 )配置自动构建的计划,假设我们想让项目中每天 12 点和晚上 8 点自动构建一次,只需要在 Build Triggers 中选择 Build periodically ,并在 Schedule 中输入 0 12,20 * * *

我配置的是每晚 8 点自动构建

注: Schedule 的配置规则是有 5 个空格隔开的字符组成,从左到右分别代表:分 年。 * 代表所有, 0 12,20 * * * 表示“在任何年任何月任何天的 12 20 0 分”进行构建。

3.3 )配置到这里,可能有人发现在 Build 配置节点,有红色错误信息,提示

Jenkins needs to know where your Maven2 is installed.
Please do so from the system configuration.

是因为 Jenkins 找不到 maven 的原因,点击 "system configuration" ,是 system configuration maven 配置中添加 maven 目录就 OK。

我设置了JRE 6MAVEN 3 的安装目录。

点击左下角的SAVE 按钮,保存设置。

3.4 )保存好所有配置后,我们第 1 job 就算是完成了。

3.5 )创建第 2 job ,配置和上面的配置相同。只需把 svn 地址改成:http://localhost/svn/Web

三、自动编译

在经过上面的配置后,回到 Jenkins 首页,在首页可以看到刚才添加的 2 job

点击某 1 job 后后面的 "Schedule a build" 图片手动构建,点击完后,会在左边的 Build Queue 或者 Build Executor Status 显示正在构建的任务,在自动构建完后,刷新页面,就可以看到构建结果了,如何某个项目构建失败,点击项目后面的构建数字 ( 1 开始递增 ) 进入项目的 " Console Output " 可以查看项目构建失败的原因。当然我们也可以配置把构建失败的结果发到邮箱。

到目前为止, 1 个简单的自动构建环境就搭建好了,很简单吧。

四、自动测试

mavenpom.xml 中配置test resoucetest class

Jenkins 中新建一个mvn batch ,如下

  1. :@echo off  
  2.   
  3. setlocal  
  4.   
  5. set  my.dir =%CD:~-11%  
  6.   
  7. if not "%my.dir%" == "\myproject" goto lerr1  
  8.   
  9. goto lgo  
  10.   
  11. :lerr1  
  12.   
  13. echo do at myproject directory  
  14.   
  15. goto lend  
  16.   
  17. :lgo  
  18.   
  19. call mvn clean  
  20.   
  21. call mvn test  
  22.   
  23. :lend  
  24.   
  25. endlocal  

启动之后,就可以自动测试所有的Junit

五、自动部署

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

这是个问题,不过别急,要达到自动部署的目的,需要安装 1 Jenkins 的部署插件。选择“系统管理”菜单的“管理插件”:

选择“可选插件”,找到Deploy Plugin 1.8 插件,选择并安装它。

注:Deploy Plugin 1.8 插件支持Tomcat 4.x/5.x/6.x/7.x JBoss 3.x/4.x Glassfish 2.x/3.x

点击底部的“安装”按钮,耐心等待,直到Deploy Plugin 完成,显示Success

选择框打钩,Jenkins 会自动重启:

此时,在插件管理的“已安装”Tab 页,可以看到部署插件已安装完毕。

重新进入webconfigure 配置界面,在最下面会发现多处1 个配置项,让我们配置tomcat 的基本信息

 

 

注: war file 使用的是 Jenkinsworkspace 的相对目录, hudon 默认的目录在:

C:\Documents and Settings\ 用户名 \.Jenkins\

workspace 目录: C:\Documents and Settings\ 用户名 \.Jenkins\ jobs\web\workspace\

最终产生的 war 在: C:\Documents and Settings\ 用户名 \.Jenkins\ jobs\web\workspace\Web\target\web.war

注:可支持远程部署,用 Jenkins 做部署机器,和运营机器分开管理

保存配置再重新构建一次,打开tomcatwebapps 目录,发现web.war 终于过来了,大功告成。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics