ci: 新增 test-ios workflow 手动验证 iOS 签名上传链路

只跑 iOS 构建+上传 TestFlight,workflow_dispatch 触发,默认版本 v0.0.1
(build 号最低,不与正式发版冲突),用于验证 7 个签名 secret 配置正确。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
wangjia
2026-06-16 12:20:12 +08:00
parent 146444ccc3
commit 8749bbae72
2 changed files with 39 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
name: Test iOS Build
# 手动触发,只跑 iOS 构建 + 上传 TestFlight,用于验证签名链路(证书/Profile/API Key
# 是否正常,无需打 tag 发版。默认版本 v0.0.1(build 号最低=1,不与正式发版冲突)。
on:
workflow_dispatch:
inputs:
version:
description: '测试版本号(build 号由此推导,默认 v0.0.1 不与正式版冲突)'
required: true
type: string
default: 'v0.0.1'
jobs:
build-ios:
runs-on: mac
env:
PUB_HOSTED_URL: https://pub.flutter-io.cn
FLUTTER_STORAGE_BASE_URL: https://storage.flutter-io.cn
steps:
- uses: actions/checkout@v4
- name: Provision (idempotent — auto-runs if host not initialized)
run: sh scripts/ci/provision-mac.sh
- name: Compile & upload to TestFlight (Flutter iOS)
env:
IOS_DIST_CERT_P12_BASE64: ${{ secrets.IOS_DIST_CERT_P12_BASE64 }}
IOS_DIST_CERT_PASSWORD: ${{ secrets.IOS_DIST_CERT_PASSWORD }}
IOS_PROVISIONING_PROFILE_BASE64: ${{ secrets.IOS_PROVISIONING_PROFILE_BASE64 }}
IOS_TEAM_ID: ${{ secrets.IOS_TEAM_ID }}
APPSTORE_API_KEY_ID: ${{ secrets.APPSTORE_API_KEY_ID }}
APPSTORE_API_ISSUER_ID: ${{ secrets.APPSTORE_API_ISSUER_ID }}
APPSTORE_API_KEY_P8_BASE64: ${{ secrets.APPSTORE_API_KEY_P8_BASE64 }}
run: sh scripts/ci/compile-ios.sh "${{ inputs.version }}"
+3
View File
@@ -59,3 +59,6 @@ backend/issue
# Claude 私有文件
.claude/commands/
.claude/worktrees/
# iOS 证书私钥(绝不入库)
.ios-certs/