You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何合并GitHub Actions中两个条件化的制品下载步骤

合并GitHub Actions制品下载步骤的实现方案

你可以通过GitHub Actions的条件表达式动态控制run_number参数的传递,同时自动生成对应步骤名称,从而把两个步骤合并为一个:

- name: Download Artifact ${{ inputs.my_artifact_version == 'latest' && 'Latest Version' || 'Version [' + inputs.my_artifact_version + ']' }}
  uses: dawidd6/action-download-artifact@v2
  with:
    workflow: my_backup_workflow.yml
    workflow_conclusion: success
    branch: main
    run_number: ${{ inputs.my_artifact_version != 'latest' && inputs.my_artifact_version || '' }}
    name: ${{ env.MY_BACKUP_FOLDER }}
    path: output
    if_no_artifact_found: fail

关键细节说明:

  • 动态步骤名称:通过三元表达式判断版本是否为latest,自动生成对应名称,保留原有的可读性。
  • 条件传递参数:当inputs.my_artifact_version不等于latest时,将其值作为run_number传递;否则传递空字符串。GitHub Actions会自动忽略空值参数,效果和原代码中不声明该参数完全一致。

合并后的步骤功能与原两个独立步骤完全等价,既实现了逻辑判断,又简化了工作流代码结构。

内容的提问来源于stack exchange,提问作者James

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 21:29:56