已关闭
feat(actions): gc actions workflow run — 手动触发流水线 #509
aflyingto创建于  8月10日关闭于  8月12日
aflyingto成员
8月10日 创建

背景

拆自专项 issue gitcode-cli/cli#506 §3.2。对齐 gh workflow run。

API 端点(已就绪)

POST /api/v8/repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches

  • 路径参数:owner、repo、workflow_id(也可传带 yml/yaml 后缀的文件名,非全路径)
  • 请求体:
    {
      "ref": "string (分支名或 tag 名)",
      "inputs": { "key": "value" }
    }
    
  • 响应 201:
    { "workflow_id": "string", "workflow_run_id": "string" }
    

API 文档:api-doc/docs/api/actions/post-api-v8-repos-owner-repo-actions-workflows-workflow-id-dispatches.md

需求

新增 gc actions workflow run 子命令,手动触发流水线(workflow_dispatch)。

命令接口

gc actions workflow run [<workflow-id> | <filename>] -R owner/repo [flags]

Flags:

  • -r, --ref <string>:分支或 tag 名称
  • -f, --raw-field <key=value>:添加字符串参数
  • -F, --field <key=value>:添加字符串参数(支持 @ 语法读取文件)
  • --json:JSON 输出(返回 workflow_run_id)
  • -R, --repo:仓库
  • --yes:跳过确认(破坏性操作,默认需确认)

新增代码

  • api/queries_actions.go:新增 DispatchWorkflowRequest、DispatchWorkflowResponse、DispatchActionsWorkflow 函数
  • pkg/cmd/actions/workflow/run/run.go:run 子命令
  • 复用 cmdutil.ScanContentForSecrets 扫描 inputs

对齐 gh 参考

gh workflow run [<workflow-id> | <filename>] [--ref <ref>] [-f <key=value>] [-F <key=value>]

验收标准

Refs gitcode-cli/cli#506

likedislike
Aaflyingto成员
8月10日 添加了label:agent-friendlyenhancementscope/actions
Aaflyingto成员
8月11日 关联了里程碑:gh-parity: 全面对齐 gh CLI
aflyingto成员
8月12日 评论:

验证记录

验证版本: main (c77df34)
验证命令: gc actions workflow run --help + 源码审查
验证结果:

  • gc actions workflow run 命令不存在(workflow 仅有 list 子命令)
  • API 端点已就绪:POST /api/v8/repos/{owner}/{repo}/actions/workflows/{workflow_id}/dispatches
  • 请求体:ref(分支/tag)+ inputs(key-value 自定义参数)
  • 响应 201:{workflow_id, workflow_run_id}
  • workflow_id 也可传带 yml/yaml 后缀的文件名
  • 现有 ListActionsWorkflows 使用 RawREST v8 路径模式可参考

结论: 确认功能缺失,API 就绪,需新增 workflow run 子命令。

likedislike
Aaflyingto成员
8月12日 添加了label:status/in-progress, status/verified
Aaflyingto成员
8月12日 关联了pull request:feat(actions): add gc actions workflow run — trigger workflow dispatch
Aaflyingto成员
8月12日 关闭了 issue