Configure Presto
for your CI.
Guided setup handles GitHub Actions automatically. Use this reference for custom workflows, Xcode Cloud, access controls, and troubleshooting.
GitHub Actions
Guided setup finds your shared iOS scheme and opens this change as a pull request. Use the example below only when you need to configure the workflow by hand.
name: Presto
on:
pull_request:
permissions:
contents: read
id-token: write
pull-requests: read
concurrency:
group: presto-${{ github.event.pull_request.number }}
cancel-in-progress: true
jobs:
preview:
runs-on: macos-latest
steps:
- uses: actions/checkout@v5
- uses: aryamansharda/presto-build@v1
with:
scheme: MyAppXcode Cloud and other CI
Publish the iOS Simulator build your CI already produces. Presto does not compile it again.
The token lives in App Store Connect, not in the repo. Create it once, paste it once, revoke it from your workspace whenever.
- 1
Create a publish token on the repo’s page in your workspace. It only works for that repo.
- 2
In App Store Connect, open the Xcode Cloud workflow that builds your PRs.
- 3
Under Environment Variables, add
PRESTO_TOKENand tick Secret. - 4
Download the publisher once with the commands below. Review it, commit
ci_scripts/ci_post_xcodebuild.sh, and review future updates before replacing it. Xcode Cloud runs that file after every build.
mkdir -p ci_scripts
curl -fsSLo ci_scripts/ci_post_xcodebuild.sh https://presto.digitalbunker.dev/publish.sh
chmod 700 ci_scripts/ci_post_xcodebuild.shAccess and retention
Access follows GitHub. People can only run builds for pull requests they can already see.
- You pick which repos get the app installed. Nothing else is visible to us.
- Everyone signs in with their own GitHub account, on the web and in the Mac app.
- Builds expire after seven days. Remove a repo or revoke a token any time from the workspace.
Troubleshooting
Start with the message you see, then follow the shortest recovery path.
No Run button on the PR
Open the Actions tab. If the Presto job failed, confirm that the iOS scheme is shared and the workflow runs on pull_request.
The Mac app cannot open the build
Install the iOS runtime named in the error from Xcode Settings under Platforms. Then click Run in iOS Simulator again.
The build expired
Builds remain available for seven days. Push a commit or rerun the workflow to replace the expired build.
The pull request comes from a fork
Fork builds are not supported because GitHub does not issue them a trusted identity token. Ask the contributor to push a branch to the repository.