【发布时间】:2022-10-13 04:25:43
【问题描述】:
我有一个 GitHub 操作。它可以从分支、拉取请求或手动触发。我想实现以下目标:永远不能有两个从同一个分支并行运行的操作实例,包括来自分支的拉取请求。
我最好的想法是这样做(伪代码):
concurrency: {{ if github.head_ref is nonempty then github.head_ref else github.ref }}
当从 PR 触发作业时,github.head_ref 包含源分支的名称。从分支触发作业时,github.ref 包含分支名称。所以上面的表达式应该可以解决我的问题,除了它不是有效的 GitHub 操作代码,我不知道是否可以做出这样的表达式。
我可以写一个表达式或表达式组合来实现上述目的吗?或者我可以通过其他方式解决我的根本问题吗?
【问题讨论】:
标签: github-actions