git - 仅当从 GitHub 中的特定分支发出拉取请求时,如何触发 Jenkins 管道?
问题描述
我们的团队更改了分支策略,这需要我更改 Jenkins 设置。有一个主要的“master”分支和一个“dev”分支。
开发人员将向开发人员发出他们各自的离散拉取请求 (PR),这将触发 GitHub Actions 上的一些单元测试,但是当从“开发”分支到主“主”分支进行 PR 时,应该触发 Jenkins 管道.
由于我目前已经配置了该流程,因此无论分支如何,都会在每个拉取请求上触发 Jenkins 管道,但我想要做的只是在每次 PR 专门从“dev”分支到时触发 Jenkins 管道“主”分支。
解决方案
在这种情况下,您可以使用多种策略。
首先:您可能希望为针对dev
分支打开的分支制定一个命名约定,并计划最终在那里合并。然后,您可以设置管道以根据分支名称和命名约定之间的匹配进行过滤。请注意,这将在分支上触发作业,而不是在 PR 上。
第二:您可能希望在每个 PR 上启动管道,找出目标分支,如果它不适合您的配置,请尽早退出并中止构建。
在有点类似的情况下,我们使用第二种方法。
推荐阅读
- spring-boot - 自定义拦截器未注册
- git - 如何从 git 中的不同远程分支更新本地分支
- java - 如果我的程序是使用 JDK 8 编写的,那么我的所有依赖项是否都需要使用 JDK 8,而不是 JDK 6?它在构建工具方面与 JDK 有何不同?
- oracle - Oracle APEX 报告查询 - 默认显示所有行
- python - Python sklearn 缩放器
- c++ - 我无法通过光线追踪算法追踪超过 1 个球体
- python-3.x - GCP Pub/Sub - 如何从 BQ 计划查询中检索状态
- ios - 未按预期应用约束
- node.js - 如何使用 google drive api 查找特定文件夹的存储详细信息
- c++ - 为什么在 C++ 中不允许从 int (*)(int) 到 void* 的 static_cast?