在GitHub操作中,我如何才能在推送时触发,但只有在PR处于活动状态时才能触发? [英] In GitHub Actions, how can I trigger on push but only if a PR is active?

查看:9
本文介绍了在GitHub操作中,我如何才能在推送时触发,但只有在PR处于活动状态时才能触发?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

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

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

然后我打开一个公关到开发。我在PULL_REQUEST:CREATED上触发了CI构建操作。让我们假设此构建失败。默认情况下,我无法合并PR,这是正确的。

现在我要将编辑推送到Feature分支以更新PR。我希望这些推送触发CI构建(因为我们现在在一个开放的公关内部工作)。在这些推送配置项通过之前,我不想允许PR继续/合并。

如何在GitHub操作中执行此操作?我尝试了on pull_request: edited,但对我不起作用。

我正在寻找以下功能的等价物:

on:
  push:
    if: inside_open_pr

推荐答案

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

on:
  pull_request:

注意:默认情况下,仅当pull_request的活动类型为openedsynchronizereopened时,工作流才会运行。若要触发更多活动类型的工作流,请使用TYES关键字。

source

如果您将新的提交推送到Pull请求的Head Ref,则将触发此"Synchronize"事件。这是因为系统正在将拉入请求与最新更改同步。如果更新基本引用,则不会触发此操作。

source

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

source

这篇关于在GitHub操作中,我如何才能在推送时触发,但只有在PR处于活动状态时才能触发?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆