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

如何为GitHub Actions配置工作流参数自定义默认值

问题根因

workflow_dispatch触发配置里的inputs.default字段只支持静态字符串,不会解析${{ }}形式的上下文表达式。你写在default里的${{github.actor}}会被当成普通文本直接展示在手动触发的输入框里,不会替换成实际的触发者用户名,所以配置不生效。

可行方案

目前GitHub没有提供在手动触发表单渲染阶段动态填充输入框默认值的能力,要实现你要的效果,可以在工作流执行的第一步做值的兜底处理:

  • 先给release_notes设置一个静态的占位默认值,提示用户留空会自动填充
  • 工作流启动后第一步判断输入值,如果是占位内容或者空值,就自动拼接github.actor生成你需要的默认内容,后续步骤统一使用处理后的值即可

参考配置如下:

on:
  workflow_dispatch:
    inputs:
      release_notes:
        description: 'Release Notes'
        required: false
        default: "留空将自动填充构建者信息"

jobs:
  release:
    runs-on: ubuntu-latest
    steps:
      - name: 生成最终发布说明
        id: gen_notes
        run: |
          if [ -z "${{ github.event.inputs.release_notes }}" ] || [ "${{ github.event.inputs.release_notes }}" = "留空将自动填充构建者信息" ]; then
            echo "content=Build by: ${{ github.actor }}" >> $GITHUB_OUTPUT
          else
            echo "content=${{ github.event.inputs.release_notes }}" >> $GITHUB_OUTPUT
          fi

      - name: 后续使用发布说明
        run: |
          echo "本次发布说明:${{ steps.gen_notes.outputs.content }}"
          # 后续构建、发布逻辑统一引用steps.gen_notes.outputs.content即可

如果用户手动修改了输入框里的内容,上述逻辑会直接使用用户输入的内容,不会覆盖,和原生默认值的行为完全一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.02 22:24:31