EAS Feature Branch Builds
How to create and distribute internal test builds for feature branches using EAS Build.
Categories:
Creating Test Builds for Feature Branches (EAS Build)
We use Expo Application Services (EAS) Build to create internal builds (.ipa
for iOS, .apk
for Android) directly from feature branches for testing purposes before merging to main
.
Prerequisites
- EAS Account & Login: Ensure you have an Expo account and are logged in via the EAS CLI (
eas login
). - EAS Project Setup: The project should be configured for EAS Build (
eas build:configure
). This is typically done once per project. - Internal Distribution Setup:
- iOS: An Ad Hoc provisioning profile must be configured in
eas.json
, including the UDIDs of all test devices. See Finding Device UDIDs. - Android: Builds can typically be distributed via internal sharing links or potentially Firebase App Distribution (if configured).
- iOS: An Ad Hoc provisioning profile must be configured in
Workflow
- Checkout Feature Branch: Make sure you are on the local feature branch you want to build (
git checkout your-feature-branch
). - Ensure Branch is Pushed: Push your latest commits to the remote repository (
git push origin your-feature-branch
). EAS Build often works best when building from a remote commit hash. - Run EAS Build: Execute the build command, specifying the platform and the desired distribution profile (usually named
internal
or similar ineas.json
).- iOS:
eas build --platform ios --profile internal
- Android:
eas build --platform android --profile internal
- iOS:
- Monitor Build: EAS CLI will provide a link to monitor the build progress on the Expo website.
- Distribute Build: Once the build is complete:
- iOS: The
.ipa
file can be downloaded from the build details page. It needs to be distributed manually (e.g., via Slack, email, or a simple hosting service) to testers whose device UDIDs are included in the provisioning profile. They can typically install it via Finder or Apple Configurator. - Android: The
.apk
file can be downloaded. It can be shared directly with testers, who will need to enable installation from unknown sources on their devices. Alternatively, if Firebase App Distribution is set up, you can upload the APK there.
- iOS: The
- Provide Build Link/File: Share the downloadable build link (from the EAS build page) or the artifact file itself with the designated testers.
Important Notes
- Build Profiles (
eas.json
): Theinternal
profile ineas.json
defines crucial settings like distribution type (internal/ad-hoc), credentials, and environment variables. Ensure it’s correctly configured. - Credentials: EAS manages iOS and Android signing credentials. Ensure they are set up correctly for internal distribution (
eas credentials
). - Costs: EAS Build operates on a usage-based pricing model. Be mindful of the number and frequency of builds.
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.