SuperAPI AI 工具集

gpc-ci-integration

部署与运维

查看项目

更新于 10-16 02:32

技能介绍

用途:在 CI/CD 中集成 GPC,实现 Play Store 发布自动化,适用于 GitHub Actions、GitLab CI、Bitbucket Pipelines、CircleCI 或通用环境,覆盖上传、晋级(promote)与监控流程。

主要能力:GPC 在 CI 中自动检测环境——非 TTY 时默认 JSON 输出、CI=true 时禁用交互提示、非 TTY 下禁用颜色,并在 $GITHUB_STEP_SUMMARY 可用时写入步骤摘要。可用环境变量覆盖:GPC_NO_INTERACTIVE=1、GPC_NO_COLOR=1、GPC_OUTPUT=json。v0.9.81+ 配置优先级为:CLI 参数 > 环境变量(GPC_SERVICE_ACCOUNT / GPC_APP)> 激活 profile > .gpcrc.json > 默认值。输出格式支持 json、csv、tsv(v0.9.68+)与 junit(部分命令名称属性通用,建议用 json+jq)。退出码:0 成功、1 一般错误、2 用法错误或缺少 --yes、3 鉴权错误、4 API 错误、5 网络错误、6 阈值越界、10 插件错误;v1.0.0-rc.1 起未知选项/缺参退出 2,vitals 无数据退出 6(THRESHOLD_NO_DATA),退款/撤销类命令需 --yes。

使用方式:GitHub Actions 可用 yasserstudio/gpc-action@v1,输入 service-account-json、package-name、release-files、track,可用 gpc-version 锁定版本,该 action 不把 gpc 加入后续步骤 PATH。手动流程则通过 npm install -g @gpc-cli/cli --ignore-scripts 安装,或用安装脚本获取独立二进制。示例命令包括 gpc releases upload、gpc preflight、gpc releases status --error-if-in-review、gpc vitals crashes --threshold、gpc releases promote、gpc bundles wait、gpc changelog generate 等。

适用场景与限制:适合上传到内部轨道、上传+晋级全流程、vitals 门禁灰度、变更日志生成与翻译、dry-run 测试。需提供服务账号、包名与发布流程等输入;vitals 门禁依赖 Play Developer Reporting API 与读取权限;多任务流水线建议用 gpc bundles wait 等待包处理完成;供应链安全建议锁定版本、使用 --ignore-scripts、固定 actions SHA 与步骤级 secrets。