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

如何在GitHub Workflow中条件化设置run-name

在GitHub Workflow中条件化设置run-name的实现方法

你想根据工作流的触发来源(当前ci-systems仓库直接触发,还是其他仓库通过workflow_call调用)动态设置run-name,但直接在run-name里写shell的if语句是不生效的,得用GitHub Actions自带的表达式语法来实现条件判断。

以下是符合需求的正确配置:

name: my tests
run-name: >-
  My Regression tests: ${{ inputs.my_version }}
  ${{ github.event.repository.name == 'ci-systems' && format('+ ci-systems: {0}', github.head_ref || github.ref_name) || '' }}

on:
  workflow_call:
    inputs:
      my_version:
        type: string
        default: Version_O
  workflow_dispatch:
    inputs:
      my_version:
        type: string
        default: Version_X

配置逻辑说明:

  • 用GitHub的三元表达式逻辑条件 && 真值 || 假值判断当前仓库名称是否为ci-systems
  • 当仓库名称匹配时,通过format函数拼接分支信息(github.head_ref对应PR触发场景,github.ref_name对应分支/标签直接触发场景,用||兼容两种情况)
  • 不匹配时返回空字符串,run-name就只显示版本部分

注意:仓库名称区分大小写,要确保判断条件里的字符串和实际仓库名完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 07:10:02