local-archive-export-upload

Solid

Use when a build must reach TestFlight without Xcode Cloud (quota, outage, CI not wired yet), or when a local `xcodebuild archive` / `-exportArchive -exportOptionsPlist` / `xcrun altool --upload-package` command fails — `ExportOptions.plist` keys (`method`, `destination`, `teamID`, `manageAppVersionAndBuildNumber`), `-authenticationKeyPath` vs `-allowProvisioningUpdates`, `CFBundleVersion` colliding with Xcode Cloud's counter. Temporary fallback for xcode-cloud-single-track-ci; does NOT cover ASC operations after upload → asc-api-automation, nor `notarytool` notarization.

AI & Automation 19 stars 0 forks Updated today MIT

Install

View on GitHub

Quality Score: 81/100

Stars 20%
43
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Local Archive, Export, Upload The manual escape hatch for getting a build to TestFlight when Xcode Cloud's **Main CI** workflow (→ `xcode-cloud-single-track-ci`) can't run — quota exhausted, an outage, or CI not wired up yet. Same three Apple CLIs Xcode Cloud uses under the hood — `xcodebuild archive`, `-exportArchive`, upload — driven by hand instead of Apple's managed runner. ## When to invoke - Xcode Cloud can't run but a build must reach internal TestFlight today. - Writing or debugging a local archive/export/upload script or one-off command. - Diagnosing an `ExportOptions.plist` / signing / build-number failure. - Asked "how do I ship a build without Xcode Cloud" or "what does `-exportOptionsPlist` need". ## Scope Owns: the local three-step pipeline (archive → export → upload) and its signing/export-key semantics. Does NOT own: - ASC operations once the build exists (TestFlight groups, what's-new, submission) → `asc-api-automation`. - What has to be true for the build to *pass* review → `app-store-review-rejections`. - `.p8` / API-key storage → `build-time-secret-injection` + `apple-public-repo-security`. - Restoring Xcode Cloud once quota returns — this is a **temporary substitute**, not a parallel permanent CI track. ## Pipeline | Step | Command | Notes | |---|---|---| | 1. Archive | `xcodebuild archive -scheme <Scheme> -destination 'generic/platform=iOS' -archivePath build/App.xcarchive` | `-destination` picks the platform; a `generic/platform=...`...

Details

Author
wei18
Repository
wei18/apple-dev-skills
Created
2 months ago
Last Updated
today
Language
Python
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Listed

appstore-archive-uploader

App Store IPA/PKG archives: set version/build numbers, archive, export, upload, or publish with `asc xcode` before TestFlight/App Store submission.

11 Updated 3 weeks ago
Xopoko
DevOps & Infrastructure Listed

xcode-cloud-single-track-ci

Use when setting up or changing CI for an Apple-platform project on Xcode Cloud — choosing Xcode Cloud vs GitHub Actions, splitting PR / Main / Release / scheduled workflows, writing `ci_scripts/ci_post_clone.sh` / `ci_pre_xcodebuild.sh` / `ci_post_xcodebuild.sh`, or wiring `CI_BUILD_NUMBER`, `MARKETING_VERSION`, `agvtool` numbering. Or asked "do I need dual-track CI", "main failed after the PR passed", "Xcode Cloud build number collides". Does NOT cover shipping a build by hand when Xcode Cloud is down → local-archive-export-upload, nor ASC REST calls after upload → asc-api-automation.

19 Updated today
wei18
AI & Automation Listed

asc-api-automation

Use when automating App Store Connect from a script or CI via the ASC REST API (`api.appstoreconnect.apple.com`) — ASC API `.p8` key / JWT auth, TestFlight `betaGroups` / `betaBuildLocalizations`, `appStoreVersions` / `releaseType`, `reviewSubmissions`, `salesReports`, `analyticsReportRequests` — or asked "automate TestFlight / submission / release notes", "should I use fastlane", or debugging 401 NOT_AUTHORIZED / 429 RATE_LIMIT_EXCEEDED. API side only: build & upload → xcode-cloud-single-track-ci / local-archive-export-upload; `.p8` storage → build-time-secret-injection.

19 Updated today
wei18