- Create preview builds for pull requests and post links to runnable preview sessions.
- Run proof checks that open the new build, exercise the change, and report what happened.
- Run saved workflows automatically against the pull request build.
Connect GitHub
From the terminal, one command connects GitHub, scaffolds the config, and applies it:
Prefer the dashboard? Install the app and configure repos under
Integrations → GitHub. The settings page shows the equivalent
revyl github setup command so you can hand off to the CLI at any point.
Configure PR previews
At minimum, each enabled platform needs a Revyl app, a build command, and an artifact path. You can configure these in the dashboard, throughrevyl github setup, or as code in a pr_review block.
When configured as code, Revyl reads the first matching file, in order:
.revyl/config.yaml, .revyl/config.yml, revyl.yml, revyl.yaml. Only the
pr_review section is used by the GitHub integration; other sections such as
build or hotreload are safe to keep in the same file.
How the config gets applied
- On a PR that touches the file: Revyl previews the parsed config in a PR comment so you can review the change before it takes effect.
- On the default branch: the file becomes the source of truth. The repo’s
settings page shows Managed by
.revyl/config.yamland the UI controls become read-only. - Removing the block (or the file) reverts the repo to UI-managed. The last applied policy is preserved and stays editable in the UI.
revyl github push applies your local file
without waiting for a merge.
Example
pr_review.builds.* uses the same env, secrets, and caches shapes as
build.platforms.*. Keep plaintext, non-sensitive values in the env mapping
and encrypted secret names in secrets; a name cannot appear in both. Cache
lists are independent between the two profiles and are never inherited.
The former PR-review syntax env: [SECRET_NAME] still loads for compatibility
and is normalized into secrets, but it is deprecated. New and updated files
should always use the canonical fields above.
Proof of changes
Turn on proof checks when you want Revyl to exercise the pull request build and report whether the change behaves as expected:Run workflows
Add workflow IDs when you want existing Revyl workflows to run automatically against the pull request build:Top-level fields
Actions
Builds
Declare a preview build per platform underbuilds.ios / builds.android.
Preview builds run on the same runners as remote builds.
- iOS artifacts must be simulator
.appbundles; Android artifacts must be installable.apkfiles (not.aab). See artifact requirements. envlists secret names only. The secrets must already exist in Revyl (add them under Settings) — missing secrets are reported on the PR instead of running with gaps.- Only declare platforms your repo actually builds.
Generate with AI
In the GitHub setup flow, Generate with AI has your coding agent inspect the repo and write thepr_review block. It produces the same schema
documented here.
Use your own CI
Revyl can run the build for you, but it does not have to. If your team already has custom CI, private dependency setup, or a specialized build pipeline, use your own CI as the build step and still keep GitHub previews, proof checks, and workflow runs. There are two common patterns:- Trigger a Revyl remote build from CI when you want Revyl runners but need CI-specific setup or environment variables.
- Upload a finished artifact from CI when your pipeline already produces
the
.appor.apk.
use_existing_ci: true for the target in your
pr_review config or choosing Use your own CI in the dashboard. Revyl will
wait for your CI-provided build, then use it for the same preview links, proof
checks, and workflow runs.
See Building in CI
for more upload examples.
Related
- Remote Builds — the build runners behind PR previews
- Apps — where preview builds are registered
- Workflows — build the workflow IDs referenced by
actions.workflows