Skip to main content

EAS Preview

Set up workflow to run EAS Preview for every Pull Request.

caution

Currently SCI can generate EAS Preview workflow in Expo projects only.

This workflow is meant to integrate your app with expo.dev. It uses Expo continuous-deploy-fingerprint action to publish EAS Updates and trigger EAS Builds in development profile when the fingerprint of the app changes. You can learn more with Expo documentation on EAS Build, EAS Update and Expo fingerprint.

Additionally, a comment will be created in your PR with a link to the build and a QR code to scan and open the app on your device with the latest update:

eas-preview-gh-comment

Usage

npx setup-ci --preset --eas

Detailed behavior

Below you can find detailed information about what the script does with your project when generating EAS Preview workflow.

Installed dependencies

  • expo
  • expo-dev-client
  • expo-updates

Expo token

This workflow communicated with expo.dev and needs to authenticate with your Expo account. Therefore, you will be prompted to provide an Expo token as repository secret. You can learn more about using Expo with GitHub actions in Expo with GitHub actions.

App credentials

SCI will ask you whether you want to configure credentials for signing apps built with EAS Build. This step is free for Android app, but to setup credentials for iOS you need a paid Apple Developer account. If you skip this step, your iOS builds will only be able to be run on iOS simulator. You can learn more at App credentials.

Modified and created files

FileChanges
.github/workflows/eas.ymlContains the CI workflow
package.jsonMissing dependencies are added
app.jsonSet expo.runtimeVersion.policy to fingerprint(if app.config.js is detected, you will be prompted to do it manually)
eas.jsonCreated with basic EAS configuration if not detected

Workflow details

The following diagram represents the flow of EAS Preview workflow:

Known issues and limitations

  • Currently SCI can generate EAS Preview workflow in Expo projects only.