如何确定触发当前工作流程的 Github Actions 事件是一个新的拉取请求?

10
我有一个在 Github Actions 上触发的工作流程:
on:
  pull_request:
    types:
      - synchronize
      - opened

运行我的自定义操作的程序:

jobs:
  my_job:
    uses: "org/repo/.github/workflows/main.yml@master"

在名称为org/repo的操作中,当有一个pull request被打开时,我想要做一件额外的事情,但是不希望在它被同步时执行。所以在org/repo/.github/workflows/main.yml中,我这样做:

- if: ${{ condition }}
  name: Do that additional thing

如何区分新开启的拉请求事件和"同步"事件(推送新提交等)的条件? 我猜这可能涉及在${{ github.event.pull_request }}中检查某些内容,但我在文档中找不到它。

1个回答

16

条件如下:

- if: ${{ github.event_name == 'pull_request' && github.event.action == 'opened' }}

3
你的回答可以通过添加更多关于代码的信息以及它如何帮助提问者来改进。 - Tyler2P
抱歉,它是否也涵盖了“同步”情况? - Maurizio Cacace

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接