1name: Native Component List app 2 3on: 4 workflow_dispatch: {} 5 pull_request: 6 paths: 7 - .github/workflows/native-component-list.yml 8 - apps/native-component-list/** 9 - packages/** 10 - yarn.lock 11 paths-ignore: 12 # Ignore Expo CLI for now... 13 - packages/expo/cli/** 14 - packages/expo/bin/** 15 - packages/expo/e2e/** 16 push: 17 branches: [main] 18 paths: 19 - .github/workflows/native-component-list.yml 20 - apps/native-component-list/** 21 - packages/** 22 - yarn.lock 23 paths-ignore: 24 # Ignore Expo CLI for now... 25 - packages/expo/cli/** 26 - packages/expo/bin/** 27 - packages/expo/e2e/** 28 29concurrency: 30 group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} 31 cancel-in-progress: true 32 33jobs: 34 build: 35 runs-on: ubuntu-18.04 36 steps: 37 - uses: actions/checkout@v2 38 with: 39 submodules: true 40 - uses: actions/setup-node@v2 41 with: 42 node-version: '14.17' 43 - name: Get yarn cache directory path 44 id: yarn-cache-dir-path 45 run: echo "::set-output name=dir::$(yarn cache dir)" 46 - uses: actions/cache@v2 47 with: 48 path: ${{ steps.yarn-cache-dir-path.outputs.dir }} 49 key: ${{ runner.os }}-yarn-${{ hashFiles('yarn.lock') }} 50 restore-keys: | 51 ${{ runner.os }}-yarn- 52 - run: yarn install --frozen-lockfile 53 - run: yarn tsc 54 working-directory: apps/native-component-list 55 - run: yarn lint --max-warnings 0 56 working-directory: apps/native-component-list 57 - name: Notify on Slack 58 uses: 8398a7/action-slack@v3 59 if: failure() && (github.event.ref == 'refs/heads/main') 60 env: 61 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 62 SLACK_WEBHOOK_URL: ${{ secrets.slack_webhook_api }} 63 with: 64 channel: '#expo-sdk' 65 status: ${{ job.status }} 66 fields: job,message,ref,eventName,author,took 67 author_name: Build Native Component List 68