例如,在我的存储库中,我有 3 个 github 操作工作流:linting(L)、unittests(U) 和 build(B) 工作流,我只想在 L 和 U 完成时触发它们。 L 和 U 都会在推送事件时自动触发。 如果我在 B 工作流中执行此操作:
workflow_run:
workflows: ["Lint", "UnitTests"]
types:
- completed
我的构建工作流程被触发了两次,第一次是在 L 完成时,第二次是在 U 完成时。 当L和U都完成时,是否可以只触发一次B?
答案 0 :(得分:1)
这是不可能的。它在这里的工作方式类似于 OR
。如果您只想在两个工作流完成时触发此工作流,您需要在此处引入某种编排器,它将存储状态并保留有关已执行工作流的信息。它可能是一些稳定的应用程序。然而,这是巨大的努力。