name: Native update
on:
  push:
    tags:
      - v*

jobs:
  update:
    name: Expo Update
    runs-on: ubuntu-latest
    defaults:
      run:
        working-directory: ./front
    steps:
      - name: Checkout repository
        uses: actions/checkout@v4

      - 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 Node
        uses: actions/setup-node@v4
        with:
          node-version: 18.x
          cache: yarn
          cache-dependency-path: front/yarn.lock

      - name: Setup Expo
        uses: expo/expo-github-action@v7
        with:
          expo-version: latest
          eas-version: latest
          token: ${{ secrets.EXPO_TOKEN }}

      - name: Install dependencies
        run: yarn install --immutable

      - name: Publish update
        run: yarn update
