update pwa file scheme #35
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: 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 |