Learn how to trigger builds on EAS for your app using the Expo GitHub App.
This guide explains how to trigger builds directly from your GitHub repository using the Expo GitHub App.
This feature is in early access and may change significantly. Its performance might not be as polished or reliable as our established features during this early access period. We appreciate your understanding and welcome any feedback to help us improve!
For the build profiles you want to use with GitHub, specify an
image to use for the native platform in eas.json.
latest image if your project's configuration does not rely on a specific build image. For example:
To trigger EAS builds from a GitHub repo, you'll need to configure your project for EAS Build and successfully run a build from your computer for each platform that you'd like to support on GitHub.
If you haven't successfully run
eas build -p [all|ios|android] yet, see Create your first build for more information. Once you have, continue with the steps in this guide.
The following must also be true:
Visit your project's GitHub settings page.
Install the Expo GitHub App on your GitHub account.
Link your GitHub account to your Expo account.
Note: You must be an admin of the Expo account to install the app. Also, you can only link GitHub organizations to Expo organizations.
Then, you'll be able to link your repository to your Expo project.
Before you run a build, the Expo GitHub App needs to know where to find the source code for your project. If your Expo project source code is in the root of your repository, then you don't need to do anything. If your Expo project source code is in a subdirectory, then you'll need to configure "Base directory" settings for your repository on your project's GitHub settings page.
Once you have configured your app for GitHub, you can trigger a build from GitHub by using the UI on your project's build list page or by labels on your GitHub PRs.
Visit your project's build list page and click the "Build from GitHub" button. You'll be prompted to select a Git ref (branch/commit/tag), a platform to build for, and the build profile to apply to it.
You can also specify a base directory for this specific build. That will not change the global settings for this project.
You can trigger a build from a GitHub PR by adding a label to the PR. The label must be in the form
[platform] is either
[profile] is the name of a build profile specified in your eas.json file. If you don't specify
a build platform, it will default to
all. If you don't specify
a build profile, it will default to
For example, if
you want to trigger a production build for Android, add the label
eas-build-android to the PR.
The build will be triggered for the latest commit on the PR's base branch. You can view the status of the build in the PR's checks. A link to the build will be available in the check's details.
You can take your build automation further by automatically building your Expo project when you push code to GitHub.
You can set up build triggers to configure when EAS builds your app from GitHub. We allow you to build when pushing to a branch, pull request, and Git tag.
Open your Expo project in the dashboard. To create a build trigger, scroll down to the Build triggers section of the project GitHub settings page and click New Build Trigger.
When you click New Build Trigger, you will be presented with a form to configure how this build should run.
These patterns can include wildcards represented by asterisks (
*), which can match any character and number of characters inside the pattern. For example,
releases/* can match
release/genesis, and so on. If you specify the pattern as a sole asterisk (
*), all branches/tags will be matched.
You can also configure triggers for specific platforms and build profiles. If you select multiple platforms, a separate trigger will be made for each.
When you push to a branch or tag, you can find the builds by looking at a commit's Checks section.
For pull requests, you can configure a target branch pattern. This is the destination branch of the pull request you want to build. The same rules apply for wildcards here as well.
When you push to a pull request with a source and target branch matching this trigger, you'll find these builds in the checks section of the pull request:
Note: To trigger builds from a pull request, the pull request's author must be a collaborator on the GitHub repository. If you want to build pull requests from external contributors, apply a PR Label.
On your project's GitHub settings page in the Expo dashboard, you can click the options button to the right of a build trigger row to disable, edit, or delete the trigger.