【问题标题】:In GitHub Actions, how can I uniquely identify the workflow under execution?在 GitHub Actions 中,如何唯一标识正在执行的工作流?
【发布时间】:2022-01-31 14:41:58
【问题描述】:

我正在使用带有自托管运行器的 GitHub Enterprise。我将构建工件存储在专用文件夹中,这样我就可以在同一个管道中拥有多个版本,而不必担心用新版本覆盖旧工件。

我正在使用此文件夹方案存储我的工件:

ARTIFACTS_PATH: "c:/github/artifacts/${{ github.repository_owner }}/${{ github.event.repository.name }}/${{ github.run_id }}"

这有助于我确保每个工作流运行都有自己的目录。但我现在的问题是我想实现“滚动删除”,在每个工作流程完成后,它会删除与该工作流程相关的最后 5 个工件文件夹以外的所有内容。但为此,我需要能够将工件文件夹映射到特定的工作流程。

所以我想要的是看起来像这样的东西,但是 workflow_id 环境变量不存在。

ARTIFACTS_PATH: "c:/github/artifacts/${{ github.repository_owner }}/${{ github.event.repository.name }}/${{ github.workflow_id }}/${{ github.run_number }}"

有没有什么方法可以通过唯一的 id 或类似的东西来唯一标识正在执行的工作流?

【问题讨论】:

    标签: yaml github-actions


    【解决方案1】:

    您可以使用工作流文件名(唯一,因为工作流文件必须直接存储在文件夹 .github/workflows 中)或工作流 ID。

    工作流 id 可以由

    确定

    【讨论】:

      猜你喜欢
      • 2020-04-02
      • 1970-01-01
      • 2020-01-18
      • 1970-01-01
      • 2022-01-10
      • 2023-01-05
      • 2023-01-11
      • 2020-03-20
      • 1970-01-01
      相关资源
      最近更新 更多