1name: Development Client e2e
2
3on:
4  workflow_dispatch: {}
5  pull_request:
6    paths:
7      - .github/workflows/development-client-e2e.yml
8      - packages/expo-dev-*/**
9  push:
10    branches: [master]
11    paths:
12      - .github/workflows/development-client-e2e.yml
13      - packages/expo-dev-*/**
14
15concurrency:
16  group: ${{ github.workflow }}-${{ github.event_name }}-${{ github.ref }}
17  cancel-in-progress: true
18
19jobs:
20  detox_e2e:
21    runs-on: macos-11
22    steps:
23      - name: �� Checkout
24        uses: actions/checkout@v2
25      - name: �� Install required tools
26        run: |
27          brew tap wix/brew
28          brew install applesimutils
29          brew install watchman
30          echo "$(pwd)/bin" >> $GITHUB_PATH
31      - name: �� Setup Ruby and install gems
32        uses: ruby/setup-ruby@v1
33        with:
34          bundler-cache: true
35      - name: �� Install cocoapods
36        run: sudo gem install cocoapods
37      - name: �� Set up android emulator
38        uses: reactivecircus/android-emulator-runner@v2
39        with:
40          api-level: 29
41          avd-name: DevClientEmulator
42          script: echo "expo is awesome"
43      - name: �� Install `expo-test-runner`
44        run: |
45          yarn global add expo-test-runner@$(cat package.json | grep '"expo-test-runner": "[0-9]*\.[0-9]*\.[0-9]*' | head -n 1 | awk '{print $2}' | sed 's/"//g; s/,//g')
46        working-directory: packages/expo-dev-client
47      - name: ��‍♂️ Run tests
48        run: |
49          yarn e2e
50        working-directory: packages/expo-dev-client
51