Jenkins、svn、tomcat、maven持续集成部署教程

一、jenkins、tomcat、maven的安装配置

Linux中maven安装

Linux中Jenkins安装

tomcat配置:jenkins集成tomcat时需要将部署应用,tomcat需要配置指定用户和角色,在tomcat_user.xml中添加如下配置:

<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<user username="tomcat_user" password="123456"
roles="manager-gui,manager-script,manager-jmx,manager-status" />

二、准备一个web工程并与svn关联

为了方便测试,需要准备一个简单web项目,并与svn关联,此处就不多做说明,我新建了一个简单的hello world!web程序

三、在Jenkins配置maven、jdk

 

按上图位置打开全局工程配置页,分别配置maven、jdk,此处应选择jenkins所在服务器中相应目录,同时不要选择自动安装

四、新建jenkins任务

1. 新建任务,输入任务名称,选择自有风格软件项目后,点确定

2.配置源码管理

此处需要注意两点,在配置URL时需要在最后添加@HEAD指向svn仓库顶层,否则后边在自动部署时每次都只能看到上一次部署的内容;第二在配置svn账户密码时,先点add添加完成后需要在下拉框里再选择刚配置的账户(有些反人类)。

3.配置构建

3.配置构建后操作

在上一步中我们可以对svn中项目进行手工编译,那么此步操作就可以对将编译的成果做处理,我们的工程是web项目,那在此就可以将上一步的成果war包部署到tomcat中。

需要注意的是war路径为我们工程的相对路径,tomcat url为tomcat管理界面访问地址。

至此,我们的Jenkins已经可以进行手工代码编译并自动部署至tomcat了,我们可以回到任务下进行立即构建进行手工编译,然后通过浏览器来验证我们的成果

4.配置构建触发器来实现自动编译部署

选择触发远程构建,身份验证令牌是自定义的,之后远程触发地址如下,将地址在浏览器中回车,就能看到Jenkins自动编译并部署了。至此,我们也实现了jenkins自动编译和部署了,但与我们想要的效果还是有差异,我们想要的是在svn提交了代码后,jenkins就自动来完成编译部署,请继续往下看。

格式:JENKINS_URL/job/工程名/build?token=TOKEN_NAME 

示例:http://ip:8088/job/jenkins/build?token=ZTOONE_JENKINS

四、在svn中配置钩子程序

提示,为了能够完成下列操作,我们需要关闭Jenkins的防止跨站点访问,在系统管理>>全局安全配置下关闭。

为了实现svn提交后Jenkins自动完成编译、打包、部署,我们先来了解下curl钩子程序。

curl是Linux提供的指令,格式如下。

格式:curl -X post -v -u jeknkins账户:jeknkins密码  url
示例:curl -X post -v -u username:passwd http://ip.com:8088/job/jenkins/build?token=ZTOONE_JENKINS 

最后,在我们的svn仓库hook目录下复制一份post-commit.tmp,命名为post-commit

并对post-commit编辑,在文本最后,注释掉后两行,并添加前边准备的curl钩子程序,保存退出

--------------------------------------------------完美的分割线-----------------------------------------------------

到这里Jenkins+maven+svn的自动化部署就完成了,快去测试吧,在我们的ide工具中提交代码,喝口水就直接在浏览器中能访问最新内容了,是不是美美哒!!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值