SuperAPI AI 工具集

release-asc-cli

部署与运维

查看项目

更新于 10-16 09:52

技能介绍

用途:发布并验证 App-Store-Connect-CLI(ASC CLI)仓库的新版本。仅在用户明确要求发布、打标签或发布某个具体版本的 ASC CLI 时使用,不安排无人值守的自动发布。

发布流程要点:解析指定的纯语义版本号(无 v 前缀);抓取 origin 并检查本地与远程标签、已有 release 及其工作流运行。新发布要求标签不存在,并检查自上一个标签以来值得发布的改动;恢复已开始的发布时,确认已有标签指向先前已批准的发布提交,仅在目标一致时继续未完成工作。确认目标改动已通过 PR 合并,不从未合并分支或有未提交改动的检出中发布。

发布门禁:在干净分离 worktree 中运行并记录 make format、make check-docs、make check-wall-of-apps、make lint、ASC_BYPASS_KEYCHAIN=1 make test、make build、./asc version。若格式化改动文件需检查 diff 并停止门禁。

发布:刷新 origin/main 并确认 worktree HEAD 等于目标提交,若已前进则重新选择目标并重跑门禁。创建附注标签并显式推送,定位标签触发的 GitHub Actions 运行并跟踪完成。不通过移动或重建已发布标签来重试。

验证:确认 GitHub release 已发布(非草稿或预发布,除非要求),macOS、Linux、Windows 与校验和资产存在,下载的 macOS 二进制报告目标版本并通过 codesign --verify,哈希匹配校验和文件,Homebrew formula 指向新版本与哈希,WinGet 提交或 PR 存在,按需完成公证。

更新网站变更日志:在 rorkai/asc-website 根 CHANGELOG.md 准备更新(asccli.sh/changelog 的唯一来源)。有授权时应用并运行 pnpm run lint、pnpm build 与 git diff --check;否则在交接中起草并报告为待处理。

公告与清理:发布可见且变更日志存在后,阅读 references/release-announcement.md,从 asc-motion 模板渲染发布影片并准备公告线程;仅在授权时创建 Typefully 草稿,不主动排期或发布。清理本次运行创建的干净临时 worktree,并分别报告发布提交与标签、URL、资产验证、Homebrew 与 WinGet 状态、阻塞项、网站变更日志状态与公告状态。

限制:不安排无人值守发布;心跳仅可用于观察已由用户发起的标签推送及授权的下游验证,不得用于重建或移动标签。资料未提供 CLI 安装命令、收费与平台支持范围等信息。