TestFlight — Eric's Drop to Phone (iOS)
For the paid App Store walkthrough (Plan B), use APP_STORE.md. This page is only CI / Match / the one-time listing fields.
CI uploads to TestFlight with Fastlane Match and an App Store Connect API key.
Apple Developer bundle ID com.droptophone.app is registered (VHJS6KRH8K, team 528M2RYVHB). The App Store Match profile exists. Uploads stay off until TESTFLIGHT_ENABLED is true and the App Store Connect listing exists.
Apple's API cannot create the App Store Connect listing (POST /v1/apps is forbidden). Create that once in the website, then CI can upload.
One-time App Store Connect listing
- Open App Store Connect → My Apps → + → New App.
- Platforms: iOS
- Name:
Eric's Drop to Phone(or a unique variant if taken) - Primary language: English (US)
- Bundle ID:
com.droptophone.app - SKU:
droptophone-ios-1 - Privacy policy URL: https://droptophone.welchsoftware.net/PRIVACY_POLICY.html
GitHub Actions
| Secret | Purpose |
|---|---|
ASC_KEY_ID |
App Store Connect API key id |
ASC_ISSUER_ID |
App Store Connect issuer |
ASC_PRIVATE_KEY |
.p8 contents |
MATCH_PASSWORD |
Encrypts the Match certs git repo |
MATCH_GIT_DEPLOY_KEY |
SSH deploy key for the certs repo |
MATCH_GIT_BASIC_AUTH |
PAT fallback for the certs repo |
GH_WORKFLOW_PAT |
Lets a manual dev → main promote (Actions → Promote dev → main) |
CLOUDFLARE_API_TOKEN |
Cloudflare API token so Publish Windows zip / Deploy site can wrangler deploy |
CLOUDFLARE_ACCOUNT_ID |
Cloudflare account ID (same names as the company site) |
Match git URL is in src/DropToPhone.iOS/fastlane/Matchfile.
Repo variable TESTFLIGHT_ENABLED: when true, pushes to main run .github/workflows/testflight.yml. Manual runs (Actions → Deploy to TestFlight) still work while it is false.
dev does not auto-merge to main. Promote when you want a production zip / TestFlight build.
First Match profile (once): Actions → Deploy to TestFlight → Run workflow → enable bootstrap_match.
Local Xcode (device)
cd ~/DropToPhone
git pull
open src/DropToPhone.iOS/DropToPhone.xcodeproj
Select your iPhone → Signing & Capabilities → Team → Run.