更新主分支后,功能分支上的Github Action触发作业

时间:2020-07-17 17:36:56

标签: github-actions

我有一个github操作,检查我的数据库迁移文件中的版本号是否不重叠(如果我们有迁移101_SomeThing,请确保我们也没有迁移101_SomeOtherThing)。

我对合并提交的请求请求执行了github动作,以查看master上是否已经存在一个会冲突的文件。但是,这仅在PR更新时运行...因此,如果合并了另一个PR,并且现有PR没有更新,它将显示已通过的检查以确认失败。

例如:

  1. master/migrations/100_SomeStuff
  2. feature/foo/migrations/101_foo打开PR
  3. feature/bar/migrations/101_bar打开PR
  4. feature/foo已合并
  5. feature/bar现在具有通过检查,应该会失败。

如何响应第4步的事件触发在第5步重新运行的操作?

1 个答案:

答案 0 :(得分:1)

并不是真正的github动作解决方案,但是如果您在分支保护中打开此标志:

Require branches to be up to date before merging 

然后它将强制合并之前更新分支。因为foo首先被合并,所以这意味着bar落后于master,并且此检查将失败。

然后,开发人员将被迫将master合并为bar

我假设您的工作流程文件已设置为在将新提交推送到PR时触发。在这种情况下,将合并提交(或如果重新设置基础,但开发人员希望对其进行处理)推到bar时,它将重新启动工作流程并重新运行检查,从而使您的工作流程失败。