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

释放双眼,带上耳机,听听看~!

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下,启动
tomcat,
Jenkins就安装完毕,是不是很简单啊。

二、配置Jenkins

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

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

 

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

3.1)Source 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 6和
MAVEN 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
个简单的自动构建环境就搭建好了,很简单吧。

 

四、自动测试


maven的
pom.xml中配置
test resouce和
test class。


Jenkins中新建一个
mvn batch,如下


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
11. :@echo off  
21.   
31. setlocal  
41.   
51. set 
6my.dir
7=%CD:~-11%  
81.   
91. if not "%my.dir%" == "\myproject" goto lerr1  
101.   
111. goto lgo  
121.   
131. :lerr1  
141.   
151. echo do at myproject directory  
161.   
171. goto lend  
181.   
191. :lgo  
201.   
211. call mvn clean  
221.   
231. call mvn test  
241.   
251. :lend  
261.   
271. endlocal  
28
29

 

启动之后,就可以自动测试所有的
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页,可以看到部署插件已安装完毕。

 

重新进入
web的
configure 配置界面,在最下面会发现多处
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
做部署机器,和运营机器分开管理

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

给TA打赏
共{{data.count}}人
人已打赏
安全运维

设计模式之解释器模式

2021-12-12 17:36:11

安全运维

OpenSSH-8.8p1离线升级修复安全漏洞

2022-1-9 9:47:55

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索