Skip to content

Xcode Cloud

iOS build and distribution via Apple's Xcode Cloud. All builds archive to App Store Connect and distribute via TestFlight.

Products & Workflows

App Product ID Workflow Trigger Scheme File Filter Notes
Nutri-E A7AEE8F6 Default main push Nutri-E None ios/Nutri-E/Nutri-E.xcodeproj
Reward-E 3B4EECB2 Default main push RewardE None ios/RewardE.xcodeproj
Fast-E AAFB4E73 Default main push FastE None ios/FastE.xcodeproj
Fast-E AAFB4E73 Fast-E - App Store Manual only FastE None Manual trigger for App Store builds
Count-E AEB723D3 Default2 main push CountE None ios/CountE.xcodeproj
Drink-E 275BD2D2 Default main push DrinkE None ios/DrinkE.xcodeproj
Drink-E 8F9F479E Default main push (ios/ only) DrinkE ios/ directory Duplicate product — has file filter
Heart-E NONE NOT configured in Xcode Cloud

All workflows: Archive → iOS, distribution: APP_STORE_ELIGIBLE, clean build: true, auto-cancel: true.

Cuti-E Platform Apps (in Xcode Cloud but not managed by us)

App Product ID Notes
Cuti-E Admin 2F32A418 cutie-admin-ios
Cuti-E Feedback 046A65C8 cutie-feedback
Cuti-E Super Admin 063839D0

Legacy

App Product ID Notes
SupTrackAI 8B960BC7 Old app, predecessor to Nutri-E

Build Flow

Push to main (or manual trigger)
  → Xcode Cloud picks up via workflow trigger
  → Archive iOS app
  → Upload to App Store Connect
  → TestFlight internal distribution (automatic)
  → HUMAN APPROVAL required for App Store submission

GitHub Integration

Xcode Cloud GitHub App is installed account-wide on Stig-Johnny org. This creates check suites on ALL repos (including non-iOS MCP repos). Auto-merge workflows filter out xcode-cloud checks.

Fix needed: Restrict Xcode Cloud app to selected repos only in GitHub Settings → Integrations → Applications → Xcode Cloud → Configure.

Issues

  1. Heart-E not in Xcode Cloud — needs to be set up before it can ship
  2. Drink-E has 2 products — duplicate, should consolidate to one
  3. Count-E workflow named "Default2" — should rename to "Default" or "Count-E"
  4. Fast-E has manual workflow — "Fast-E - App Store" is manual-only, may be redundant with Default

CI Scripts

All apps use XcodeGen. The Xcode Cloud ci_scripts/ directory in each repo handles: - ci_post_clone.sh — runs xcodegen generate after Xcode Cloud clones the repo - Resolves SPM dependencies

Monitoring

GitHub Actions workflow monitor-xcode-cloud.yml (on some repos) monitors build status after merge. Missing on: drink-e, heart-e (see docs/infrastructure/ci-cd.md repo status table).