您当前的位置: 首页 >  git

Jenkins集成Gitlab配置提交流水线

蔚1 发布时间:2020-02-11 23:30:50 ,浏览量:5

在大型项目开发过程中,开发人员频繁提交新代码,然后在项目生命周期结束时将其集成到代码仓库。在集成的时候往往会需要消耗大量的时间去解决构建编译等问题。如何配置 Jenkins 与版本控制系统 Gitlab 集成实现自动化提交构建? 并优化(分支名称自动替换、增加构建描述信息、变更 commit 状态、构建失败邮件通知、过滤特殊push请求。

在本场 Chat 中,会讲到如下内容:

  1. 配置提交流水线
  2. 提交流水线优化
  3. 合并流水线

适合人群: 对 DevOps 感兴趣的所有同学。

目录内容
  • 提交流水线
  • 配置 jenkins
  • 配置 gitlab
  • 提交流水线优化
  • 分支名称自动替换
  • 增加构建描述信息
  • 变更 commit 状态
  • 构建失败邮件通知
  • 过滤特殊 push 请求
  • 合并流水线
提交流水线

当 Gitlab 中触发 push 操作,则触发相对应的 Jenkins 流水线构建。实现快速反馈与验证。

  • 方式 1: 使用 Gitlab CI,当有 push 请求,在 CI 脚本中远程触发 Jenkins 项目构建。
  • 需要准备 Gitlab runner
  • 编写触发 Jenkins 脚本
  • 方式 2: 使用 Gitlab WebHook,当有 push 请求,直接触发 jenkins 项目构建。【采用】
  • 需要配置 Gitlab webHook
  • 需要配置 Jenkins 项目 Hook
配置 jenkins

首先我们准备一个能够构建成功的流水线项目(暂且不设置复杂的步骤,helloworld 即可)

编辑项目配置: 我们要使用Generic Webhook Trigger触发器,需要安装插件。这触发器非常灵活,推荐使用。

在这里插入图片描述

开启Generic Webhook Trigger触发器,添加一个请求参数 runOpts Request parameters 。我们定义这个参数是为了对构建做个标识。辨别手动触发构建与提交构建。配置一个token默认我使用的是项目的名称,必须唯一,否则在配置了相同的 token 的项目都会被触发。Print post content用于展示请求日志,Print contributed variables展示我们在 post 中获取的变量内容。

在这里插入图片描述

配置完成后: 我们生成一个触发 URL

在这里插入图片描述

http://JENKINS_URL/generic-webhook-trigger/invoke?token=demo-maven-service_PUSH&runOpts=GitlabCI

配置 gitlab

我们找到要配置提交触发构建的项目,设置->集成,勾选Push Events在这里插入图片描述

配置完成,这时候我们进行提交代码,会发现已经能够正常触发项目构建了。如果出现了问题,我们重点检查 jenkins 的项目触发 URL 和网络权限问题。

提交流水线优化 分支名称自动替换

当我们在任意分支提交的时候,Jenkins 需要获取我们提交的分支进行构建。而不是固定的分支。

增加获取 hook

关注
打赏
1688896170
查看更多评论

蔚1

暂无认证

  • 5浏览

    0关注

    4645博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文
立即登录/注册

微信扫码登录

0.0691s