jenkins实现master变化时,才触发构建(过滤分支)
现状:现在是这样的,每个开发push时,都触发jenkins进行构建
期望:只有当代码被push到master时才进行构建
(根据使用的git平台)做这些配置需要先了解一些概念:
(github) pull request
(gitlab) merge request
理解 GitHub 的 Pull Request 和 GitLab 的 Merge Request 有区别吗?看这篇
https://cloud.tencent.com/developer/article/1341633
个人理解,其实pull request 和 merge request表达的意思都是一样的,只是在不同的平台,起了不同的名字
- GitHub、Bitbucket 和码云(Gitee.com)选择 Pull Request 作为这项功能的名称
- GitLab 和 Gitorious 选择 Merge Request 作为这项功能的名称
然后还要理解gitlab的工作流:
步入正题:
2种方式可以实现 只有master代码变化时才触发自动化测试
- 利用merge request: 当开发发送merger request给项目leader时(要求合代码),就进行构建
- 利用jenkins进行配置,只有当master代码产生push时,才进行构建
方式1:利用merge request方式:
step1:
打开gitlab仓库配置的webhook,勾选Merge request events的选项
我这边是已经配置过webhook了,如果还没有配置过,请参考这篇进行配置:
GitLab 自动触发 Jenkins 构建
step2:配置jenkins
打开项目配置
Builder triggers>>取消勾选Push Events 选项,然后把有关merge request events 的选项勾上(如果不去掉push events 当分支发生push时,jenkns还是会构建)
step3:测试配置结果
在gitlab 发送一个push的请求,可以看到jenkins已经不会构建了
再测试发送一个 merge request
发现jenkins已经在进行构建了
方式2:利用jenkins进行配置,只有当master代码产生push时,才进行构建,这个很简单
我们可以通过jenkins>>Builder triggers 配置正则匹配,只有当master分支发生改变时才会触发jenkins。
step1:打开项目配置
Builder triggers>>Advanced>>Allowed branches>>Filter branches by regex>>Target Branch Regex>>填写master>>保存配置
注意:这次要勾选 push events
step2:测试配置结果
a.当开发在dev分支push时,jenkins不会再进行构建
b.当开发在 master push时,jenkins进行构建了
至此就实现了我想要实现的效果:只有master分支会触发jenkins进行构建
我遇到坑:
如果我使用方式2配置了过滤分支的正则表达式(同时勾选了push events ),gitlab发送请求的时候就会报错
造成这个问题的原因是,我的正则表达式写错了,晕~
应该是master 而不是*master
我参考的文章,谢谢前人zai树,让后人可以乘凉
配置github的pull request触发jenkins自动构建
jenkins定位master分支构建
配置GitHub pull request时jenkins自动构建
jenkins实现master变化时,才触发构建(过滤分支)的更多相关文章
- Jenkins触发构建
目录 一.简介 二.时间触发 定时触发 轮询代码仓库 三.事件触发 由上游任务触发 gitlab通知触发 四.通用触发接口 GWT 提取参数 触发某个具体项目 过滤请求值 控制打印内容 控制响应 一. ...
- 自动化部署-svn hook触发构建
目的 之前是通过轮询的形式,2分钟更新一次svn,即时性不高,现在想要实现提交代码时直接触发构建 方案 使用svn的服务器hook,当有代码提交时请求jenkins api实现构建 具体实现 1.je ...
- el-select和el-cascader的visible-change下拉框隐藏时触发相关事件(下拉框下拉显示时不触发)
原文:https://blog.csdn.net/CarryBest/article/details/79959389 今天做项目时,用elementUI框架,需要下拉框隐藏时出发某个函数,用了vis ...
- 使用Jenkins时,如果GIT_COMMIT无变化,跳过构建
使用Jenkins时,如果GIT_COMMIT无变化,跳过构建 使用插件: conditional-buildstep A buildstep wrapping any number of ot ...
- Jenkins教程(七)实现 GitLab 提交/合并代码触发构建
楔子 最近公司推行统一构建平台(基于 Jenkins + Kubernetes 插件创建 slave),原来部门自建的 Jenkins 不让用了. 迁移上统一构建平台的最大阻力是前端模块发布的问题: ...
- Gitlab+Jenkins学习之路(十一)之Jenkins自动触发构建和发布
思路图: 一.下载gitlab plugin jenkins-->系统管理-->管理插件-->下载并安装gitlab plugin 二.配置gitlab认证 路径:Jenkins-- ...
- 【06】Jenkins:Gitlab 自动触发构建以及钉钉通知
写在前面的话 在某些时候,我们希望能够实现这样一个功能,当用户提交东西到 gitlab 上的时候,希望它能够自动触发构建,发布到我们需要的环境. 目前我们内部有做类似的需求:产品提交原型到 gitla ...
- Jenkins使用四:Jenkins创建任务,实现代码有改动时,自动构建
新建任务 指定在哪台节点运行 添加要监控的git地址和使用账号,此账号为设置节点时配置公私钥时设置的ssh登录账号 设置检查代码是否有变更的频率,每三分钟检查一次,如果检查到有变更就构建 修改文件再提 ...
- CICD | Jenkins & Gitlab集成:WebHook触发构建
在上一篇博客中,我们学习了Jenkins的搭建和插件+流水线的基本使用方法,Jenkins极大地提升了部署效率. 最近想学习一下如何集成GitLab webhook,实现进一步解放双手,目标: 推送( ...
随机推荐
- SQL标量函数
调用 MS SQL 标量值函数,应该在函数前面加上 "dbo.",否则会报 “不是可以识别的 内置函数名称”错误.例如 DECLARE @WhichDB TINYINT; ...
- charles模拟弱网情况
网络主要需要注意什么场景: 弱网功能测试 无网状态测试 网络切换测试 用户体验关注 下面我们使用charles测试弱网,针对不同网络下的测试 打开charles(抓包软件)
- #C语言l作业04
这个作业属于哪个课程** C语言程序设计ll 这个作业的要求 (https://edu.cnblogs.com/campus/zswxy/SE2019-4/homework/9776) 我在这个课程的 ...
- ash: export: `/usr/lib/jvm/jdk1.8.0_201/lib/dt.jar': 不是有效的标识符
ash: export: `/usr/lib/jvm/jdk1.8.0_201/lib/dt.jar': 不是有效的标识符 ps: 如果有任何问题可以评论留言,我看到后会及时解答,评论或关注,您的鼓励 ...
- Springboot War包部署下nacos无法注册问题
目录 1. @EnableDiscoveryClient的使用 2. EnableDiscoveryClientImportSelector类的作用 3.AutoServiceRegistration ...
- CodeChef 3-Palindromes(Manacher+dp)
3-Palindromes Problem code: PALIN3 Submit All Submissions All submissions for this problem are ...
- idea 配置maven web项目
文章转自:https://www.cnblogs.com/weiqingfeng/p/9494914.html 步骤一:首先先创建一个project,上次我说过了创建一个project就是一个工作空间 ...
- untiy3D-初学NGUI遇到问题
1,如果需要能在场景中右键添加NGUI的控件,我们需要做好下图两个框住的地方 第一个框可以使用键盘的W选中,或者鼠标点击 第二个框我们选中UIRoot然后保持它的脚本文件为打开状态,才可以使用右键添加 ...
- 攻防世界--re2-cpp-is-awesome
测试文件:https://adworld.xctf.org.cn/media/task/attachments/c5802869b8a24033b4a80783a67c858b 1.准备 获取信息 6 ...
- bzoj3097 Hash Killer I
Hash Killer I Time Limit: 5 Sec Memory Limit: 128 MBSec Special Judge Description 这天天气不错,hzhwcmhf神犇给 ...