用途:在 asc CLI 内实现 lane 式自动化,用仓库本地的 .asc/workflow.json 定义多步骤流程,并完成校验、列出、运行、恢复与审计。
主要能力:工作流文件默认位于 .asc/workflow.json,可用 --file 覆盖,支持 JSONC 注释。顶层钩子有 before_all、after_all、error;工作流键包括 description、private、env、steps。步骤支持字符串简写、run 命令、workflow 子工作流调用、name 标签、if 条件、with 环境覆盖,以及从 run 步骤 JSON stdout 提取的 outputs 映射。输出引用格式为 ${steps.step_name.OUTPUT_NAME},声明 outputs 的步骤需有可安全引用的名称,且仅限 run 步骤;同一运行图中产生输出的名称须唯一。持久化输出存于运行状态,不应映射密钥。
使用方式:先用 asc workflow --help 等确认参数。校验:asc workflow validate;列出:asc workflow list 或 asc workflow list --all;预览:asc workflow run --dry-run beta BUILD_ID:123456789 GROUP_ID:abcdef;执行:asc workflow run beta BUILD_ID:123456789 GROUP_ID:abcdef。可恢复运行:asc workflow run release --resume "release-20260312T120000Z-deadbeef",此时不要额外传 KEY:VALUE。运行时参数支持 KEY:VALUE 与 KEY=VALUE,重复键后者生效,shell 中用 $VERSION 引用。环境优先级:主工作流为 definition.env < workflow.env < CLI 参数;子工作流调用为 sub-workflow env < 调用方 env 与参数 < 步骤 with。条件值 1、true、yes、y、on 为真,先查合并后的 env/params,再查进程环境。
适用场景:TestFlight 分发、App Store 版本校验与提交、上传加审核提交等 App Store Connect 自动化流程。
限制与安全:工作流会执行受信任的 shell 命令,应把 .asc/workflow.json 当作代码,仅运行可信文件,避免在带密钥时运行不可信 PR 的工作流,并纳入版本控制。建议先 validate、再 dry-run、最后 run;变更类步骤使用明确 ID 与 --confirm。应使用 asc validate、asc release stage、asc review submit、asc publish appstore,不要使用已移除的提交命令。其他细节暂未提供。