Skip to main content

Github Actions (Expo EAS)

Setup Expo (EAS) with Github Actions to upload your Android (APK) and iOS (IPA) to TestApp.io for testing and feedback.

Updated over 2 months ago

Set up Expo (EAS) with GitHub Actions to upload your Android (APK) and iOS (IPA) to TestApp.io for testing and feedback.

The following environment variables need to be set:


iOS

name: Upload IPA to TestApp.io
on:
  workflow_dispatch:jobs:
  ios:
    runs-on: macos-latest
    steps:
      - name: πŸ— Setup repo
        uses: actions/checkout@v3      - name: πŸ— Setup Node
        uses: actions/setup-node@v3
        with:
          node-version: 18.x
          cache: yarn      - name: πŸ— Setup EAS
        uses: expo/expo-github-action@v8
        with:
          eas-version: latest
          token: $#{{ secrets.EXPO_TOKEN }}      - name: πŸ“¦ Install dependencies
        run: yarn install      - name: πŸš€ Build app
        run: eas build -p ios --profile staging --local --non-interactive --clear-cache --output "./ipa/ios-staging-build.ipa"
        env:
          SENTRY_AUTH_TOKEN: $#{{ secrets.SENTRY_AUTH_TOKEN }}      - name: 🌐 Upload IPA to TestApp.io
        uses: testappio/github-action@v5
        with:
          api_token: $#{{ secrets.TESTAPPIO_API_TOKEN }}
          app_id: $#{{ secrets.TESTAPPIO_APP_ID }}
          file: ./ipa/ios-staging-build.ipa
          release_notes: ''
          git_release_notes: true
          include_git_commit_id: true
          notify: true

Android

name: Upload APK to TestApp.io
on:
  workflow_dispatch:jobs:
  android:
    runs-on: ubuntu-latest
    steps:
      - name: πŸ— Setup repo
        uses: actions/checkout@v3      - name: πŸ— Setup Node
        uses: actions/setup-node@v3
        with:
          node-version: 18.x
          cache: yarn      - name: πŸ— Setup EAS
        uses: expo/expo-github-action@v8
        with:
          eas-version: latest
          token: $#{{ secrets.EXPO_TOKEN }}      - name: πŸ“¦ Install dependencies
        run: yarn install      - name: πŸš€ Build app
        run: eas build -p android --profile staging --local --non-interactive --clear-cache --output "./apk/android-staging-build.apk"
        env:
          SENTRY_AUTH_TOKEN: $#{{ secrets.SENTRY_AUTH_TOKEN }}      - name: 🌐 Upload APK to TestApp.io
        uses: testappio/github-action@v5
        with:
          api_token: $#{{secrets.TESTAPPIO_API_TOKEN}}
          app_id: $#{{secrets.TESTAPPIO_APP_ID}}
          file: ./apk/android-staging-build.apk
          release_notes: ""
          git_release_notes: true
          include_git_commit_id: true
          notify: true


Need help? Contact us β€” we're happy to assist!

Did this answer your question?