Done

06 - Jenkins&GitLab 集成配置

2017-01-14  本文已影响382人  半个王国

目标


基础条件


配置GitLab用户


在GitLab中为 Jenkins 创建一个用户账号用来跟 GitLab 的API交互,且该用户的最小权限需为Developer(生成构建状态,一个成功的构建结果可以触发一个Merge请求【启用了这个功能的话】),如果需要触发 Accept Merge Request 动作,则可能需要更高的权限,如Master权限。

这里我创建用户 jenkins ,使用该用户登陆GitLab,进入Profile Settings页面,选择 Access Token 选项卡,创建一个 Token:


Paste_Image.png

Token : HkwCanuD2yfSsgXQx9mx
下面我们访问Jenkins服务器,配置Token

配置 Jenkins 使用 Token


进入目录 Jenkins -> Configure -> System,找到GitLab配置


Paste_Image.png

填入Connection name,Gitlab host URL,然后点击 Add,添加上个小节中生成的 API Token 认证:


Paste_Image.png
测试连接

配置 Jenkins 构建任务


创建一个自由风格的构建任务

新建自由风格的构建任务,在源码管理选项卡,选择Git,然后输入代码库地址:git@gitlab.demo.com:demo/Demo.git(以代码库实际地址为准),Credentials选择之前创建的SSH私钥

Paste_Image.png
Paste_Image.png

配置构建任务的触发器,这里,一旦GitLab项目上有Push或者Merge事件,就会自动触发Jenkins任务执行,记住这里的Service URL和Token,后面配置GtiLab仓库的时候会用到:


Paste_Image.png

构建任务这里,我们使用的是Gradle构建,因此,只需选择构建类型,声明构建任务即可


Paste_Image.png

配置GitLab仓库


下面回到GitLab,去Demo项目的设置页面,点击Web Hooks,添加Push事件和Merge事件的Web Hook给Jenkins的任务地址,并选择要推送的事件(http://jenkins.demo.com:8080/job/Demo/):

Paste_Image.png

然后点击Test按钮进行测试,点击后,我们会发现,Demo项目的构建任务,立刻进入了Jenkins任务队列中


Paste_Image.png Paste_Image.png

紧接着,构建任务开始执行


Paste_Image.png
上一篇 下一篇

猜你喜欢

热点阅读