上章节我们看到在Jenkins的内置构建触发器中,轮询SCM可以实现Gitlab代码更新,项目自动构建,但是该方案的性能不佳。
那有没有更好的方案呢?有的。就是利用Gitlab的webhook实现代码push到仓库,立即触发项目自动构建。
1. 安装Gitlab Hook插件
需要安装两个插件:Gitlab Hook和GitLab
2. Jenkins设置自动构建
稍后需要把生成的webhook URL配置到Gitlab中
3. Gitlab配置webhook
3.1 开启webhook功能(使用root账户登录)
点击Admin Area -> Settings -> Network勾选"Allow requests to the local network from web hooks and services"
3.2 在项目添加webhook
点击项目->Settings->Integrations
3.3 Jenkins中配置
以下设置必须完成,否则会报错!
Manage Jenkins->Configure System
3.4 验证
开两个窗口,点击Test中的Push events,然后在当前也看到返回正常后,刷新另一个窗口,会发现开始构建,即表示成功。
都到这儿了,更多文章,详见个人微信公众号ALL In Linux,来扫一扫吧!