Skip to content

comment out api call test until api and mocks implemented #13

comment out api call test until api and mocks implemented

comment out api call test until api and mocks implemented #13

Workflow file for this run

name: test-build-publish--app
on:
push:
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: npm
- name: Install modules
run: npm i
- name: Run linter
run: npm run lint:fix
- name: Run tests
run: npm run test:ci
build:
name: EAS Build
needs: test
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/staging'
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 repository
uses: actions/checkout@v3
- name: Setup Node
uses: actions/setup-node@v3
with:
node-version: 20.x
cache: npm
- name: Setup EAS
uses: expo/expo-github-action@v8
with:
eas-version: latest
token: ${{ secrets.EXPO_TOKEN }}
# TODO necessary? Should happen in EAS build env not here
- name: Install dependencies
run: npm i
# TODO decide profile. master = production, staging = testing
- name: Build app
run: eas build --profile production --platform android # TODO -p 'all'
update:
name: EAS Update
needs: build
if: github.ref == 'refs/heads/master' || github.ref == 'refs/heads/staging'
runs-on: ubuntu-latest
steps:
## todo add label to auto build
# https://docs.expo.dev/build/automate-submissions/
- 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: Setup EAS
uses: expo/expo-github-action@v8
with:
eas-version: latest
token: ${{ secrets.EXPO_TOKEN }}
# TODO decide profile. master = production, staging = testing
- name: Submit To Google app store (native updates)
run: eas submit -p android --profile production
- name: Submit To Apple app store (native updates)
run: eas submit -p ios --profile production
- name: Publish update (js hot updates)
run: eas update --auto