如何将 GitHub Actions 手动运行链接到 PR

Ale*_*lex 6 github github-api github-actions

由于多种原因,我需要从提及机器人的 PR 评论中手动触发 GitHub Actions 运行(I\xe2\x80\x99m 使用 ProBot)。我弄清楚了如何通过设置启动on: workflow_dispatch并调用 API 来启动工作流程。I\xe2\x80\x99m 遇到问题的地方是将运行链接到 PR。现在,该操作刚刚开始并完成,而不会出现在 PR 的检查部分中。

\n

我注意到 API 上有一个检查创建方法,但它似乎更适合创建您自己的检查套件。我可以使用它来创建检查运行,手动监视 GitHub Actions 进程,并适当更新检查运行,但这似乎有点矫枉过正。我还没有在 API 中看到任何允许这种情况发生的东西。也可能有一种方法可以从操作本身做到这一点,但我还没有\xe2\x80\x99t 发现任何东西。

\n

pet*_*ans 6

我不认为你可以用来workflow_dispatch添加/更新 PR 的检查。对社区论坛上类似问题的回答似乎证实了这一点。

仅针对以下事件添加/更新检查:

  • 拉取请求
  • 拉请求审查
  • pull_request_review_comment
  • 拉请求目标

所以你的手动操作需要触发这些事件之一来运行。您可能有多种不同的方法可以做到这一点,具体取决于您的用例。举例来说,您可以调用 API 来添加标签并允许pull_request工作流在该类型上执行。

on:
  pull_request:
    types: [labeled, opened, synchronize, reopened]
Run Code Online (Sandbox Code Playgroud)

另一件需要注意的事情是 API 调用(或 git Push)必须使用 PAT 而不是GITHUB_TOKEN. 这是为了允许执行进一步的工作流程。

  • 很好的建议!我最终使用了 on labels,然后是 if 语句,该语句仅使该工作流在特定标签上运行。然后我只需在 API 中添加标签并快速将其删除。看起来仍然有点迂回(API 可能应该只具有此功能),但可以完美满足我的需求。 (3认同)