jenkins + gitlab 自动部署(webhook)

Jenkins是一个流行的开源CI/CD工具,可以与Git等版本控制系统集成,实现自动构建、测试和部署。Webhook是一种机制,可以在Git仓库中设置,在代码提交或合并请求时触发Jenkins构建任务,以完成自动化部署。

实操

设备信息

|---------|-----------------|-------|
| jenkins | 192.168.231.241 | 6核12G |
| gitlab | 192.168.231.238 | 4核8G |

1. gitlab端远程仓库信息

2. 在Jenkins中创建一个新的构建任务。

3. 配置构建任务的参数,如源代码库地址、分支

选择gitlab远程仓库的URL

Credentials需要手动添加登录gitlab的用户及密码

观察远程从仓库的分支,如果是master就改成master

4. 构建触发器

接着

接着点击高级

点击Generate,生成秘密令牌,在gitlab的web端webhook需要用到

5. 在Git仓库中配置Webhook,将Webhook的URL设置为Jenkins构建任务的URL,并选择触发来源,如推送事件,代码提交、合并请求等。

底下最后一行有SSL验证,点击取消

令牌是之前在jenkins构建触发器,生成的秘密令牌

URL是在jenkins构建触发器是显示的

保存完后 点击测试 出现200则证明添加成功

错误提醒:如果出现选择webhook失败

解决办法:打开管理中心,网络设置

6.生成shell测试

在jenkins网页端

7. 开始构建测试,只要修改远程仓库的代码,jenkins端即自动构建

解析

webhook,避免了传统获取数据的拉的方式。不用本地不断用轮询的方式向对方服务器发送请求来知晓是否已经处理完成。而是给对方服务器提前设置好了hook url。这样地方在处理完成后就会给这个url发送请求结果了。采取的是推数据的方式。

webhook适用于开发测试环境,提交一次代码就构建一次,不建议在生产环境

相关推荐
ghx_echo3 分钟前
linux系统下的磁盘扩容
linux·运维·服务器
xiao-xiang6 分钟前
jenkins-通过api获取所有job及最新build信息
前端·servlet·jenkins
小张认为的测试8 分钟前
Liunx上Jenkins 持续集成 Java + Maven + TestNG + Allure + Rest-Assured 接口自动化项目
java·ci/cd·jenkins·maven·接口·testng
hhzz33 分钟前
ansible自动化运维实战--script、unarchive和shell模块(6)
运维·自动化·ansible
阿狸的家2 小时前
ovs实现lb负载均衡
运维·云计算·负载均衡·ovs
乙己4077 小时前
计算机网络——网络层
运维·服务器·计算机网络
不会飞的小龙人9 小时前
Docker Compose创建镜像服务
linux·运维·docker·容器·镜像
不会飞的小龙人9 小时前
Docker基础安装与使用
linux·运维·docker·容器
小歆88412 小时前
100%全国产化时钟服务器、全国产化校时服务器、全国产化授时服务器
运维·服务器
喝醉酒的小白12 小时前
Elasticsearch 中,分片(Shards)数量上限?副本的数量?
大数据·elasticsearch·jenkins