在GitHubActions中,如何在推送时触发,但前提是PR处于活动状态?

假设我有 2 个分支,一个功能分支和一个开发分支。

功能分支上通常没有 SLA,这意味着我可以整天将损坏的代码推送到它,并且不应触发 CI 构建。

然后我打开一个 PR 进行开发。我在 pull_request: created 上触发 CI 构建操作。假设这个构建失败了。默认情况下我无法合并 PR,这是正确的。

现在我想将编辑推送到功能分支以更新 PR。我希望这些推送触发 CI 构建(因为我们现在正在一个开放的 PR 中工作)。在这些 push-CI 通过之前,我不想让 PR 继续/合并。

我如何在 GitHub Actions 中做到这一点?我试过了,on pull_request: edited但这对我不起作用。

我正在寻找功能等价物:

on:
  push:
    if: inside_open_pr

回答

使用事件pull_request而不指定活动或指定活动synchronize

on:
  pull_request:

注意:默认情况下,工作流只有当运行pull_request的活动类型openedsynchronizereopened。要为更多活动类型触发工作流,请使用 types 关键字。

来源

如果您将新提交推送到拉取请求的 HEAD 引用,则将触发此“同步”事件。这是因为系统正在将拉取请求与最新更改同步。如果更新基本引用,这将不会触发。

来源

如果您还需要对基础分支的更改做出反应,那么您必须添加活动edited

来源


以上是在GitHubActions中,如何在推送时触发,但前提是PR处于活动状态?的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>