gitlab push代码经过webhooks自动触发jenkins构建设置

一、环境设置:jenkins及gitlab安装好git

二、jekins安装插件Gitlab Hook PluginGitLab Pluginweb

三、配置jenkins job,以下:api


4.登陆gitlab找到相应项目,编辑添加webhooks:gitlab



点击test,提示201,ui

五、其余提示:url

gitlab的webhooks url 是根据jenkins构建权限链接设置的,若是必须登陆才能构建就必须获取jenkins的用户名及token,能够在jenkins用户-设置里面查看到 ,url格式spa

http://<username>:<api-token>@<jenkins-server>/
插件

若是不须登陆就能构建就直接设置为http//jenkins-server/job/security_Usm/build?delay=0sec,security_Usm是job名称server

test报错403错误时Hook executed successfully but returned HTTP 403,咱们需要进入jenkins 系统设置-Configure Global Security中,关闭(去掉勾选: 防止跨站点请求伪造),而后在点击gitlab webhooks test OK 返回201 成功,查看jenkins 项目自动构建啦blog

这样设置仅仅是在push代码时触发构建,不区分分支,若是区分分支jenkins中设置以下:


蓝色线部分拷贝到gitlab的webhooks下,红线部分为构建分支的正则配置,这样在push代码的时候只有pushdevelop分支才会触发构建,push别的分支不会触发构建。