[Jenkins][Gitlab]webhook连接

完成Jenkins+GitLab的连接。步骤如下:

  1. 申请gitlab私有token
  2. 安装jenkins for gitlab插件
  3. jenkins工程中配置gitlab
  4. gitlab工程中配置jenkins

申请gitlab私有token

进入Gitlab Settings -> Access Tokens,输入Name,选择api scopes,生成私有访问token

安装jenkins for gitlab插件

进入Manage Jenkins -> Manage Plugins -> Available,选择Gitlab进行安装

在jenkins工程中配置gitlab

首先进行全局配置,进入Manage Jenkins -> Configure System,输入gitlab主机URL和添加GitLab私有访问token

然后新建Freestyle工程,配置gitlab工程地址和触发器

在gitlab工程中配置jenkins

在配置触发器时获取WebHook URL,在gitlab工程中进入Settings -> Integrations,输入URL进行配置

完成配置后会在页面下方增加一个配置条目

点击Test -> Push events,测试是否能够推送成功

Hook executed successfully but returned HTTP 404

使用localhost进行登录,导致出现404错误,修改成局域网或者公网登录即可

Hook executed successfully but returned HTTP 403

参考:Hook executed successfully but returned HTTP 403

在Jenkins进入Manage Jenkins -> Configure Global Security

  • Access Control类别下选中Allow anonymous read access
  • 取消CSRF Protection类别下的Prevent Cross Site Request Forgery exploits

进入Manage Jenkins -> Gloabl System,取消Gitlab类别下的Enable authentication for '/project' end-point