Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Bundle and Deploy EAS Update | |
on: | |
push: | |
branches: | |
- hailey/configure-builds-and-bundles | |
workflow_dispatch: | |
inputs: | |
channel: | |
type: choice | |
description: Deployment channel to use | |
options: | |
- testflight | |
- production | |
runtimeVersion: | |
type: string | |
description: Runtime version (in x.x.x format) that this update is for | |
required: true | |
jobs: | |
bundleDeploy: | |
name: Bundle and Deploy EAS Update | |
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: 🧐 Validate version | |
# run: | | |
# [[ "${{ inputs.runtimeVersion }}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] && echo "Version is valid" || exit 1 | |
- name: ⬇️ Checkout | |
uses: actions/checkout@v4 | |
- name: 🔧 Setup Node | |
uses: actions/setup-node@v4 | |
with: | |
node-version-file: .nvmrc | |
cache: yarn | |
- name: 🔨 Setup EAS | |
uses: expo/expo-github-action@v8 | |
with: | |
expo-version: latest | |
eas-version: latest | |
token: ${{ secrets.EXPO_TOKEN }} | |
- name: ⛏️ Setup Expo | |
run: yarn global add eas-cli-local-build-plugin | |
- name: 🪛 Setup jq | |
uses: dcarbone/install-jq-action@v2 | |
- name: ⚙️ Install Dependencies | |
run: yarn install | |
- name: 🔤 Compile Translations | |
run: yarn intl:build | |
- name: ✏️ Write environment variables | |
run: | | |
export json='${{ secrets.GOOGLE_SERVICES_TOKEN }}' | |
echo "${{ secrets.ENV_TOKEN }}" > .env | |
echo "$json" > google-services.json | |
- name: 🏗️ Create Bundle | |
run: yarn export | |
- name: 📦 Package Bundle and 🚀 Deploy | |
run: yarn use-build-number bash scripts/bundleUpdate.sh | |
env: | |
DENIS_API_KEY: ${{ secrets.DENIS_API_KEY }} | |
RUNTIME_VERSION: ${{ inputs.runtimeVersion }} | |
CHANNEL_NAME: ${{ inputs.channel || 'testflight' }} |