基于GitLab触发Jenkins构建

在 Jenkins 中安装插件

选择 系统管理 -> 管理插件 打开插件管理页面
可选插件 中选择 Gitlab Hook PluginGitLab Plugin

1430170-b774100867259f31.png
在 Jenkins 中安装插件

配置 GitLab 用户

创建一个用户或选择一个已有用户,用来让 Jenkins 和 GitLab API 交互。这个用户将需要是全局的管理员或添加进每个组/工程,并作为成员。需要开发者权限来报告构建状态。这是由于,当使用了 ‘Merge when pipeline succeeds’ 功能时,成功的构建状态可以触发合并。GitLab Plugin 的一些功能可能需要其它的一些权限。比如,有一个选项用于在构建成功时,接受 merge request。使用这一功能需要 developer,master 或 owner 级的权限。

选择 Settings -> Account:
拷贝其中的 Private token,稍后在配置 Jenkins 服务器时会用到。


1430170-86f1b5649f840dd4.png
image.png

配置 Jenkins 服务器

需要配置 Jenkins 服务器来与 GitLab 服务器通信。
在 Jenkins 中,选择 系统管理 -> 系统设置,在系统设置中找到 GitLab 的部分:

在 Connection name 后的输入框中输入连接名称,在 Gitlab host URL 后的输入框中输入 GitLab 服务器的 URL 地址。点击 Credentials 行最后面的 Add -> Jenkins 按钮,弹出如下对话框,在 * Kind* 后的下拉列表中选择 GitLab API token,并把上一步拷贝的 Private token 粘贴到 API token 后面的输入框中。随后在 Credentials 的下拉框中选择 GitLab API token。

1430170-ef3b26da448f009b.png
配置 Jenkins 服务器

配置 Jenkins 工程

打开 Jenkins 工程的配置页面,找到 构建触发器 的部分,勾选 Build when a change is pushed to GitLab 那一行:
需要记下 Build when a change is pushed to GitLab 那一行中,GitLab CI Service URL: 后面的 URL,后面在配置 GitLab 工程时需要用到。
还要点开右下角的 高级:
随后点击右下角的 Generate 按钮,生成 Secret token,保存这里生成的 Secret token,它同样将用于后面 GitLab 的配置。随后点击左下角的 保存 按钮,保存前面所做的配置。

1430170-3276fd825f547e6a.png
配置 Jenkins 工程

配置 GitLab 工程

创建一个新的或选择一个已有的 GitLab 工程。然后选择 Settings -> * Integrations*,在 URL 一栏中输入前面保存的 GitLab CI Service URL,在 Secret Token 一栏中输入前面保存的 Secret token,然后选择需要 trigger Jenkins 工程执行构建的事件:

点击绿色的 Add webhook 按钮,完成 webhook 的创建。
创建好了 webhook 之后,点击 Test 下拉框中的 Push events,如下图:

1430170-0f72d332e94c9760.png
配置 GitLab 工程

参考文档:

Jenkins CI service
Gitlab自动触发Jenkins构建打包

猜你喜欢

转载自blog.csdn.net/weixin_33911824/article/details/86928267