Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

时间:2023-03-09 21:43:54
Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

前言

  在局域网搭建了一个Jenkins服务,用于自动构建和发布,在调通了构建程序之后,想使用内网的GitLabWebhook功能触发代码推送事件,然后进行自动构建。后来发现在GitLab上做测试的时候报500错误,后来慢慢查找相关资料,最终终于调通。

Jenkins 添加GitLab Hook Plugin.

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

Jenkins 项目设置-构建触发器

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

Gitlab Webhook设置

  • 先添加一个Webhook,地址就是Jenkins中的通知地址

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

  • 添加完成之后,点击 Test 进行测试

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

不过这里,由于本地化的原因,报了500错误。经过查资料:GitLab配置webhook无法正常工作报500问题解决 得以解决。解决方式:通过调用API进行相关设置。

curl -X PUT --header "PRIVATE-TOKEN:pKt5yVfsysShHg_r4xkT" http://gitlab.univ.com/api/v4/application/settings?allow_local_requests_from_hooks_and_services=true

上述地址中的 PRIVATE-TOKEN是通过设置用户Accesstoken

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

再次测试的时候,发现不会是500,是403,那么就修改Jenkins的设置。系统管理---系统设置,取消勾选红框中的内容即可。

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录

最后再次进行push测试.

Jenkins + GitLab 通过 Webhook 自动触发构建爬坑记录