当通过存储库调度事件触发时,如何在工作流中指定 event_type

How to specify event_type in workflow, when triggering via a repository dispatch event

我正在尝试设置一个工作流,以通过 Github 操作 "Repository Dispatch event" 触发,如指定 here and here 所示。作为 API 请求的输入,它指定我需要包含一个事件类型,作为自定义 webhook 事件名称。

但是我也希望能够在我的工作流中使用这个事件类型,这样我就可以有多个由 repository_dispatch 选项触发的工作流,每个工作流都由它们自己的事件类型触发。

如有关 how to use webhook event triggers 的部分所述,我尝试使用 types 字段,在声明我的工作流应触发的时间时(参见代码)。然而,这只会导致没有任何东西被触发。如果我省略类型字段,工作流将触发。

这是我的工作流程

name: External trigger

on:
  repository_dispatch
    types: external_test

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
      - name: Say hi
        run: echo "Hi!"

这里是 API 请求负载:

{
    "event_type": "external_test"
}

repository_dispatch 后缺少 :,因此 yaml 无效。

name: External trigger

on:
  repository_dispatch:
    types: external_test