github - 仅当以下情况为真时,如何触发 Github 操作?
问题描述
我想触发一个 Github Action 工作流,当 EITHER
- 除了 master 之外的任何分支都有推送
或者
- 仅在 master 上有拉取请求
背景:
我们有一个开发人员团队,他们致力于上游回购的个人分叉回购。在他们的分叉存储库中,他们在各自的分支(不是主分支)上工作,并通过提出拉取请求定期将它们合并到上游主分支。还鼓励开发人员定期获取上游 master 并在其之上重新构建他们的代码。因此,我们希望在以下情况下触发单元测试:
- 开发人员正在将他们的代码推送到他们单独的分支上(不是 master,排除 master 的原因是我们不希望在开发人员获取上游 master 并将其推送到本地 master 时触发单元测试)
- 每当开发人员在上游仓库的主分支上提出 PR
这是我为实现上述场景而编写的操作 yaml 文件:
name: Test
on:
push:
branches-ignore:
- master
paths:
- <folder_with_code_to_test>/**
pull_request:
branches:
- master
paths:
- <folder_with_code_to_test>/**
jobs:
test:
# test set up follows from here
预期行为:
根据上述场景触发单元测试工作流
实际行为
当开发人员在其本地分支上推送代码时会触发单元测试(在获取上游 master 和推送到本地 master 期间也不会触发)
但是,当从分叉的功能分支提出拉取请求时不会触发单元测试到上游主控。
有没有办法实现预期的功能?
解决方案
推荐阅读
- sql - 将数据类型 varchar 转换为 real 时出错
- sql - 如何优化我的 varchar(max) 列?
- angular - 根据json文件路由到动态位置
- c - 添加到链表时,节点地址一直相互覆盖
- c++ - 仅当使用 VisualStudio 制作的文件夹时,日志文件才会保持为空。使用的低级 io
- java - 有人可以帮我理解 ImageIcon 如何适用于 java 吗?
- python - SQLAlchemy 中的条件过滤
- .net - MVC 验证在提交前显示错误消息
- r - 要创建一个循环或函数来收集使用 r 中另一个数据帧中的数据帧中的其他列值计算的多个向量的值?
- android - 我对如何在重新启动应用程序后使用 sharedpreferences 来保留我的卡片视图状态感到困惑?如果可能,请建议一些代码