Reference

Configure Presto
for your CI.

Guided setup handles GitHub Actions automatically. Use this reference for custom workflows, Xcode Cloud, access controls, and troubleshooting.

01

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.

.github/workflows/presto.yml
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: MyApp
02

Xcode 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. 1

    Create a publish token on the repo’s page in your workspace. It only works for that repo.

  2. 2

    In App Store Connect, open the Xcode Cloud workflow that builds your PRs.

  3. 3

    Under Environment Variables, add PRESTO_TOKEN and tick Secret.

  4. 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.

ci_scripts/ci_post_xcodebuild.sh
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.sh
03

Access 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.
04

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.

Guided setupConfigure a repository