如何根据另一个工作流结果的输出在一个文件中触发工作流



我有一个文件build.yml,其中包含作业,用于react应用程序部署的步骤。我有另一个工作流文件issue.yml,它负责在build.yml.中的任何步骤失败时创建问题

我只想在工作流文件build.yml出现问题时触发工作流文件issue.yml。我知道,如果我在工作流文件build.yml中创建另一个步骤来创建问题并使用条件if failure((,我可以实现它。

只是想看看是否有人有想法通过使用两个不同的工作流文件来实现它。

您可以在issue.yml工作流中使用workflow_run触发器:

如果你只在通知的工作流为completed(无论成功或失败(时通知启动它,你就可以做你想做的事情,比如:

on:
workflow_run:
workflows: ["<build workflow name>"]
types: [completed]
jobs:
on-success:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}
steps:
...
on-failure:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'failure' }}
steps:
...

您可以在触发工作流的事件文档中找到有关此触发器的更多信息。

最新更新