我们要集成自动化部署,我们肯定需要将项目上传到gitee、GitHub、SVN,等托管开发平台,其实配置都类似,我们在这里以gitee演示即可。
- 首先我们创建一个maven webapp项目,然后,将其上传到gitee(这个想必大家都会,在这里不在阐述)
- 我们打开之前安装好的jenkins,如果没有安装的,看我另一篇帖子,安装即可,(centos7下Jenkins的安装)
- 我们登录打开Jenkins创建一个新的任务
- 然后输入任务名称(尽可能取的望文知意一些),然后选择(构建一个自由风格的软件项目),点击OK,然后就出现了我们的配置这个任务的界面
- 要让Jenkins能够帮我们部署项目我们需要做到 1、告诉Jenkins我们的git链接,2、告诉他拉取我们的哪个分支,3、告诉他什么时候构建(也就是配置钩子程序,当我们提交代码的时候,让通知Jenkins自动帮我们拉取代码,然后打包部署到Tomcat)
- 我们配置源码管理,让Jenkins拿到我们的git连接,帮我们去 git clone下来,然后配置git需要登陆的用户名和密码(如果是私有项目的话)、下边选取拉取的分支,比如可能我们有许多分支,可以拉取master、develop分支等等
- 配置好源码管理之后,我们还需要告诉Jenkins我们拉取完源码,我们怎么构建呀,如何打包,我们创建的是maven项目,那肯定要使用maven进行打包,我们往下,找到构建,选择最后一项,调用顶层maven目标 -》在第一行我们选择我们配置的maven,然后第二行标识maven要执行的命令,是什么,比如clean install 就是先clean 然后在安装打包。
- 当我们打包好了之后,是不是就应该告诉Jenkins,给我们打好包帮我们丢到Tomcat下呢?没错,就是我们需要告诉Jenkins,构建后的操作,帮我们打包并发布到Tomcat webapp目录下。
- 我们增加构建后的操作,
然后我们看下打包之后的名字是怎样的
我们按照图进行配置即可,就是配置Tomcat一些信息 - 填写完成之后,我们点击保存
- 我们点击立即构建
我们点击控制台输出,可以看到他帮我们执行了git clone操作,并切换了分支,并执行了打包 - 我们去服务器Tomcat webapp看下项目有没有帮我们打包发布到该路径下,遗憾的是,并没有
- 细心地老铁应该发现了,我们上边打包方式是jar,而不是war所以他找不到我们的xxxx.war文件,所以不能将它部署到Tomcat下,我们修改打包方式为war。再次执行构建,这次成功帮我们构建成war包了,在配置里边我们构建后的操作也要进行改成我们修改的target/XXX.war的名称保持一致
- 我们可以看到信息,将war部署到Tomcat下了,我们去Tomcat路径下看看有没有。
成功部署进来了,我们浏览器访问,能够访问到,部署成功了。
综上所述我们部署已经成功了,当然有人会问Jenkins不是自动化部署吗,有没有说,我们只要提交代码,就会帮我们自动构建呢?,答案肯定是可以的,我们需要配置一个钩子程序即可,
1、我们打开任务,然后选择配置、找到构建触发器,找到gitee webhook,勾选。
2、具体的选项需要什么时候构建可以自定义,然后我们需要登录到我们的gitee配置webhook,我们考配合Gitee webhook url
3、在gitee配置webhooks,然后粘贴我们Jenkins提供的url和密码,gitee保存,jenkins那边也保存。
4、我们在本地提交代码测试一下,随便更改下,然后提交,会发现,Jenkins自动帮我们构建重启了Tomcat服务