一、Jenkins介绍
Jenkins是持续集成(CI)工具,那么什么是持续集成。
集成就是先开发一个小的模块,再逐渐和其他开发好的模块组合在一起来提高产品的完成度的过程就称为集成,通常由上传代码,构建应用,部署环境和测试等一系列步骤所组成。
但是如果这些步骤都由人手工来做的话,每次都会耗费大量的时间精力在重复的流程上面,所以就有人考虑把集成步骤交给工具来完成,然后不断的循环相同的流程,这个动作我们称之为持续集成。
Jenkins的主要目标是监控软件开发流程,快速显示问题。所以能保证开发人员以及相关人员省时省力提高开发效率。
CI系统在整个开发过程中的主要作用是控制:当系统在代码存储库中探测到修改时,它将运行构建的任务委托给构建过程本身。如果构建失败了,那么CI系统将通知相关人员,然后继续监视存储库。它的角色看起来是被动的;但它确能快速反映问题。
1.1 安装Jenkins
1、Jenkins作为一个跨平台应用,是可以搭建在任何主流操作系统上的。 进入官网:https://jenkins.io/zh/download/ 下载对应平台的安装包。
选择对应版本即可,两个二选一,第一个是长期版本,第二个每周更新,下载完成后直接安装。
2、安装完成后输入 http://localhsot:8080,弹出输入管理员密码界面;
通过上述路径找到对应文件,复制密码!
可以之间选择推荐的插件,懒人必备。接下来就等插件安装完成即可。
安装完成,进行创建管理员用户。
创建完成后,进行全局配置。
1.2 Jenkins配置Maven及tomcat安装
全局工具配置关联JDK和Maven
Jenkins->Global Tool Configuration->JDK->新增JDK,配置如下:
添加 Jenkins全局变量
Manage Jenkins->Configure System->Global Properties ,添加三个全局变量
JAVA_HOME、MAVEN_HOME、PATH+EXTRA
1.3 Jenkins构建Maven项目
1)安装Maven Integration插件
2 )创建Maven项目
3 )配置项目
拉取代码和远程部署的过程和自由风格项目一样,只是"构建"部分不同
开始构建
查看tomcat
二、通过webhook构建Jenkins项目
2.1webhook介绍
Webhook顾名思义,其实就是一钩子。当我们在Gitlab上做出某些特定操作时,可以触发钩子函数,去进行一些我们事先设定好的脚本,以达到某些特定功能(例如–前端项目自动发布)。
2.2构建项目
轮询SCM可以实现Gitlab代码更新,项目自动构建,但是
该方案的性能不佳。那有没有更好的方案呢? 有的。就是利用Gitlab的webhook实现代码push到仓
库,立即触发项目自动构建。
安装Gitlab Hook插件
需要安装两个插件:
Gitlab Hook和GitLab
Jenkins设置自动构建
等会需要把生成的 webhook URL配置到Gitlab中。
Gitlab配置webhook
1)开启webhook功能
使用root账户登录到后台,点击Admin Area -> Settings -> Network
勾选"Allow requests to the local network from web hooks and services"
2 )在项目添加webhook
点击项目->Settings->Integrations
修改代码