1name: Home app 2 3on: 4 workflow_dispatch: {} 5 pull_request: 6 paths: 7 - .github/workflows/home.yml 8 - home/** 9 - yarn.lock 10 push: 11 branches: [main, 'sdk-*'] 12 paths: 13 - .github/workflows/home.yml 14 - home/** 15 - yarn.lock 16 17concurrency: 18 group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} 19 cancel-in-progress: true 20 21jobs: 22 build: 23 runs-on: ubuntu-22.04 24 steps: 25 - name: Checkout 26 uses: actions/checkout@v3 27 with: 28 submodules: true 29 - name: ⬢ Setup Node 30 uses: actions/setup-node@v3 31 with: 32 node-version: 16 33 - name: ♻️ Restore caches 34 uses: ./.github/actions/expo-caches 35 id: expo-caches 36 with: 37 yarn-workspace: 'true' 38 - name: Yarn install 39 if: steps.expo-caches.outputs.yarn-workspace-hit != 'true' 40 run: yarn install --frozen-lockfile 41 - name: Compile Home sources 42 run: yarn tsc 43 working-directory: home 44 - name: Run Home tests 45 run: yarn jest --maxWorkers 1 46 working-directory: home 47 - name: Lint Home app 48 run: yarn lint --max-warnings 0 49 working-directory: home 50 - name: Notify on Slack 51 uses: 8398a7/action-slack@v3 52 if: failure() && (github.event.ref == 'refs/heads/main' || startsWith(github.event.ref, 'refs/heads/sdk-')) 53 env: 54 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 55 SLACK_WEBHOOK_URL: ${{ secrets.slack_webhook_api }} 56 with: 57 channel: '#expo-sdk' 58 status: ${{ job.status }} 59 fields: job,message,ref,eventName,author,took 60 author_name: Home app 61