Skip to content

EAS Production Build (Android & IOS) (EAS) #43

EAS Production Build (Android & IOS) (EAS)

EAS Production Build (Android & IOS) (EAS) #43

Workflow file for this run

# Links:
# Source file: https://github.com/obytes/react-native-template-obytes/blob/master/.github/workflows/eas-build-prod.yml
# Starter releasing process: https://starter.obytes.com/ci-cd/app-releasing-process/
# Description:
# This workflow is used to trigger a build on EAS for Prod environment.
# Can be triggered manually from the actions tab.
# This workflow will use ./actions/eas-build action to trigger the build on EAS with production env.
# GITHUB SECRETS REQUIRED:
# - EXPO_TOKEN: Expo token to authenticate with EAS
# - GOOGLE_SERVICES_KEY_BASE64: base64 encoded Play Store service account key (Android submission)
# - GOOGLE_SERVICES_JSON: base64 encoded google-services.json (single Firebase project, all Android apps)
# - You can get it from https://expo.dev/settings/access-tokens
name: EAS Production Build (Android & IOS) (EAS)
on:
workflow_dispatch:
jobs:
Build:
name: EAS Production Build (Android & IOS) (EAS)
runs-on: ubuntu-latest
steps:
- name: Check for EXPO_TOKEN
run: |
if [ -z "${{ secrets.EXPO_TOKEN }}" ]; then
echo "You must provide an EXPO_TOKEN secret linked to this project's Expo account in this repo's secrets. Learn more: https://docs.expo.dev/eas-update/github-actions"
exit 1
fi
- name: Checkout project repo
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Create .env.production
run: |
echo "BREEZ_API_KEY=${{ secrets.BREEZ_API_KEY }}" >> .env.production
echo "YADIO_API_URL=https://api.yadio.io" >> .env.production
echo "MEMPOOL_URL=https://mempool.space" >> .env.production
echo "NOTIFICATION_API_URL=${{ vars.NOTIFICATION_API_URL_PROD }}" >> .env.production
- name: Setup Node + PNPM + install deps
uses: ./.github/actions/setup-node-pnpm-install
- name: EAS Build
uses: ./.github/actions/eas-build
with:
APP_ENV: production
EXPO_TOKEN: ${{ secrets.EXPO_TOKEN }}
GOOGLE_SERVICES_KEY_BASE64: ${{ secrets.GOOGLE_SERVICES_KEY_BASE64 }}
GOOGLE_SERVICES_JSON_BASE64: ${{ secrets.GOOGLE_SERVICES_JSON }}
ANDROID: true
AUTO_SUBMIT_ANDROID: true
IOS: true
AUTO_SUBMIT_IOS: true
VERSION: $${{ github.ref_name }}