【学习GitLab】集成Jenkins

1 前言

最近在学习 GitLab,将学习成果做个简要总结,以供大家参考。如有错误,欢迎留言纠正!你的「点赞」或「打赏」将是对我最大的支持和鼓励!

本次系列文章包括:

2 如何集成Jenkins

通过 GitLab 的 webhook 功能,可以实现代码 Push 后,自动触发 Jenkins 的构建动作。要实现该功能,GitLab 和 Jenkins 两边都要做配置。

2.1 Jenkins配置

首先,需要 Jenkins 先安装 Gitlab Hook Plugin 插件。登陆Jenkins,在【系统管理 > 管理插件 > 可选插件】中选择 Gitlab Hook Plugin 插件安装,如下图所示:

Jenkisn 安装 Gitlab Hook Plugin 插件

之后,在 Jenkins 的每个项目(没有项目就新建一个)的【配置 > 构建触发器 > 构建触发器】里就能看到 Build when a change is pushed to GitLab(只有安装了 Gitlab Hook Plugin 插件才能看到),勾选使能,并记住其中的 webhook URL 地址(等下GitLab中要用到),如下图所示:

Jenkins 构建触发器中的 GtiLab 选项
上图点击【高级】按钮,点击 Generate 生成 Secret Token(等下GitLab中要用到),如下图所示:

生成 Secret Token

至此 Jenkins 的配置算完成了。

2.2 GitLab配置

登录 GitLab 进入项目的【设置 > Webhooks】页面,增加一项 webhook,填入前面 Jenkins 的 webhook URL 和 Secret Token,如下图所示:

GitLab 添加 webhook

点击【Add webhook】按钮,添加成功后,点击【测试】菜单进行测试,如果提示:

Hook executed successfully: HTTP 200

表明配置成功,此时 Jenkins 相应地会触发一次构建。同样地,往 GitLab 服务器 push 代码后,也会自动触发 Jenkins 对应项目的构建工作。

如果提示:

Hook execution failed: xxx Requests to localhost are not allowed

GitLab 管理员登录 > 管理中心 > 设置 > 网络 > 外发请求 > 展开,勾选 【允许Webhook和服务对本地网络的请求】即可。

GitLab 允许 Webhook 和服务对本地网络的的请求

猜你喜欢

转载自blog.csdn.net/benkaoya/article/details/108452272
今日推荐