ASC CLI:快速、可脚本化的 App Store Connect 自动化

ASC CLI – 快速、可脚本化的 App Store Connect 自动化

如果你正在构建 iOS 应用,可能已经花了数小时在 App Store Connect 的 Web 控制台中管理构建、TestFlight 组或销售报告。全新的 ASC CLI(App‑Store‑Connect‑CLI)将这些重复的任务转变为轻量级、以脚本为先的工具,使用 Go 编写。它是开源、MIT 许可,并可通过 Homebrew 安装或从源码编译。

为什么使用 ASC CLI?

挑战 ASC CLI 解决方案
手动工作 通过终端自动化构建、发布和获取反馈
工具繁琐 单个 Go 可执行文件(<10 MiB),启动即用
脚本支持差 首先输出 JSON,清晰的标志语法,无提示
CI 集成 非交互式、环境友好,支持 CI/CD 管道

README 和文档展示了 60 多个高级命令:asc buildsasc testflightasc reviewsasc analytics,甚至还有 asc migrate 用于 Fastlane 的兼容性。所有命令默认输出 JSON,但你可以切换到 --output table--output markdown 以获取人类可读的数据。

快速开始

Homebrew(推荐)

brew tap rudrankriyam/tap
brew install rudrankriyam/tap/asc

从源码安装

git clone https://github.com/rudrankriyam/App-Store-Connect-CLI.git
cd App-Store-Connect-CLI
make build
sudo make install  # 安装至 /usr/local/bin

身份验证

asc auth login
  --name 'MyApp'
  --key-id 'ABC123'
  --issuer-id 'DEF456'
  --private-key /path/to/AuthKey.p8
该工具默认将凭据存储在操作系统的钥匙串中,若钥匙串不可用也可以写入本地 ~/.asc/config.json

核心功能

  1. 构建与版本管理 – 列出、全部列出、失效并将构建附加至版本。例如:asc builds list --app 123456789 --paginate
  2. TestFlight 自动化 – 添加测试者、管理测试组、获取反馈,并通过 YAML 导出配置。例如:asc testflight sync pull --app 123456789 --output testflight.yaml
  3. App Store 元数据 – 设置语言、类别、定价并上传本地化。例如:asc app-setup info set --app 123456789 --locale en-US --name 'My Awesome App'
  4. 分析与财务报告 – 直接下载销售、财务和详细报告到 TSV 或 CSV。例如:asc analytics sales --vendor 12345678 --type SALES --frequency DAILY --date 2024-01-20
  5. Fastlane 兼容性 – 通过 asc migrate 命令导入/导出 Fastlane 元数据。
  6. 零交互 – 所有命令均为旗标驱动;无交互提示,完全 CI 友好。
  7. 自动更新 – 通过安装脚本安装后,ASC 在启动时检查更新并自动更新。

高级脚本技巧

  • 分页 – 使用 --paginate 自动跟随 next 链接。
  • 排序--sort 标志支持升序或降序排列。
  • 输出格式 – 切换为表格或 markdown 以获得可读报告。
  • 调试--debug 打印详细输出;--api-debug 暴露 HTTP 跟踪。
  • 环境覆盖 – 设置 ASC_KEY_IDASC_ISSUER_IDASC_PRIVATE_KEY(或 base64)以在 CI 运行时跳过交互登录。

示例工作流程

# 认证(首次)
asc auth login --name myapp --key-id ABC123 --issuer-id DEF456 --private-key ~/.keys/AuthKey.p8

# 构建新版本
asc builds upload --app 123456789 --ipa path/to/app.ipa

# 将构建附加至版本
asc versions attach-build \
  --version-id V123-456 \
  --build BUILD_ID

# 提交审核
asc submit create --app 123456789 \
  --version '1.5.0' \
  --build BUILD_ID \
  --confirm

# 获取提交状态
asc submit status --id SUBMISSION_ID
在 CI 作业中运行此脚本即可实现完整的端到端自动化,而无需打开 App Store Connect UI。

社区与贡献

ASC CLI 正在积极维护—已有超过 500 次提交、50 版发布以及 500+ 星标。欢迎通过 pull request 参与贡献;请查看 CONTRIBUTING.md 了解指南。该项目依赖于开源社区来获取功能请求、错误报告和文档改进。

结论

ASC CLI 为 App Store Connect 提供了干净、版本可控、可脚本化的接口,可替代任何开发工作流中的手动 UI 步骤。它非常适合需要可重复、自动化部署的团队,以及希望避免 Web UI 瓶颈的个人开发者。

立即下载并试用,将终端的力量带入你的 App Store Connect 流水线。

原创文章: 查看原文

分享本文