name: CLI on: push: branches: [main, 'sdk-*'] paths: - .github/workflows/cli.yml - packages/@expo/cli/** - packages/@expo/metro-runtime/** - packages/@expo/metro-config/** - packages/@expo/fingerprint/** - packages/create-expo/** - packages/expo-router/** - yarn.lock pull_request: paths: - .github/workflows/cli.yml - packages/@expo/cli/** - packages/@expo/metro-runtime/** - packages/@expo/metro-config/** - packages/@expo/fingerprint/** - packages/create-expo/** - packages/expo-router/** - yarn.lock schedule: - cron: 0 14 * * * concurrency: group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }} cancel-in-progress: true jobs: test: runs-on: ubuntu-22.04 steps: - name: ๐Ÿ‘€ Checkout uses: actions/checkout@v3 with: fetch-depth: 100 - name: โฌ‡๏ธ Fetch commits from base branch run: git fetch origin ${{ github.event.before || github.base_ref || 'main' }}:${{ github.event.before || github.base_ref || 'main' }} --depth 100 if: github.event_name == 'pull_request' || github.event_name == 'workflow_dispatch' - name: โ™ป๏ธ Restore caches uses: ./.github/actions/expo-caches id: expo-caches with: yarn-workspace: 'true' - name: ๐Ÿงถ Install node modules in root dir if: steps.expo-caches.outputs.yarn-workspace-hit != 'true' run: yarn install --frozen-lockfile - name: ๐Ÿ”Ž Type Check CLI run: yarn typecheck working-directory: packages/@expo/cli - name: ๐Ÿ›  Build CLI run: yarn prepare working-directory: packages/@expo/cli - name: E2E Test CLI run: yarn test:e2e working-directory: packages/@expo/cli - name: E2E Test @expo/fingerprint run: yarn test:e2e working-directory: packages/@expo/fingerprint # - name: ๐Ÿ”” Notify on Slack # uses: 8398a7/action-slack@v3 # if: failure() && (github.event.ref == 'refs/heads/main' || startsWith(github.event.ref, 'refs/heads/sdk-')) # env: # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} # SLACK_WEBHOOK_URL: ${{ secrets.slack_webhook_api }} # with: # channel: '#expo-cli' # status: ${{ job.status }} # fields: job,message,ref,eventName,author,took # author_name: Check packages