Jenkins如何自动获取gitlab上的代码

最近更新:2022.11.8

如何安装jenkins和gitlab我就不重复了,请自行搜索我的博客

那么,jenkins如何获取gitlab上的代码呢?我们可以通过gitlab webhook方式

具体配置步骤如下

1. Gitlab配置个人访问令牌

注意事项:姓名那里需要记录下来,以为jenkins那边可能也需要用到,日期不用选,范围那里勾选api即可。那个访问令牌只会出现一次,需要记下来。jenkins要获取那个gitlab的项目,就要把该用户加入到哪个gitlab项目中

 

2. Jenkins安装gitlab插件

在可选插件里面找到gitlab,选中点击最下方的直接安装(注意安装完成后,需要重启jenkins才能生效)

3. Jenkins配置gitlab连接

箭头所指的地址,鼠标移到该位置后会自动显示一个箭头,我们点击那个箭头就会出现以下列表了

在系统配置里找到gitlab连接配置。分别填入连接名,gitlab地址,证书

证书哪里,点击右边的添加-》jenkins。类型选gitlab api,在api token那里填入第一步gitlab生产的个人令牌字符串,id和描述都填第一部gitlab写的姓名那个即可

确认添加,接着测试连接。需要配置到提示Success为止

4.  新建工程测试拉取gitlab代码

点击工程配置,源码代理选择git

配置证书。选择用户名与密码,用户名和密码分别是该用户登录gitlab页面时的账号和密码,id和描述最好也是和第一步gitlab填入的姓名一致,最后确认添加

下图是配置使用账号密码方式,应改为Gitlab Api Token方式,就是我们前面配置好的凭证,这里我没截图,大家自行改为Gitlab Api Token方式。不过这是我的理解,实际没操作验证过,后面有时间再回来补充验证结果

添加完成后,如果repository URL下面没有出现红色报错,说明没什么大问题了。最后注意保存设置哦

配置构建触发器-》勾选Build when a change is push..(后面带有一个URL,这个URL我们需要在Gitlab中配置Webhook URL用)

Gitlab中配置Webhook

像我这就配置成   http://admin:xxxx@192.168.10.418080/job/test/build?token=12345678

admin:是jenkins的web登陆账号,xxxx就是对应的密码,自己清楚

192.168.10.40:8080: jenkins的地址,也可以写域名,当然要能被gitlab解析

test:就是对应的jenkins的任务

确认添加Webhook并测试。正常test测试会返回200成功

配置webhook参考步骤

5. 验证

如果能正常构建成功,说明我们配置成功了

我们可以通过手动点击立即构建做测试。理想情况下,是开发提交代码到gitlab后,gitlab通过webhook触发jenkins的CI/CD

 

 

参考文章:

https://www.cnblogs.com/gongxr/p/9257434.html

posted on 2019-04-25 11:25  标配的小号  阅读(2107)  评论(2编辑  收藏  举报

导航