Skip to content

Commit 292e7b9

Browse files
authored
ci: copy iOS job from CircleCI (#921)
1 parent a821897 commit 292e7b9

File tree

3 files changed

+52
-9
lines changed

3 files changed

+52
-9
lines changed

.github/Brewfile.ios

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
tap 'wix/brew'
2+
brew 'applesimutils'

.github/workflows/ci.yml

Lines changed: 49 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ on:
66
pull_request:
77
jobs:
88
review:
9-
name: 'Review'
9+
name: Review
1010
runs-on: ubuntu-latest
1111
steps:
1212
- name: Checkout
@@ -15,7 +15,7 @@ jobs:
1515
uses: actions/[email protected]
1616
with:
1717
node-version: 16
18-
cache: 'yarn'
18+
cache: yarn
1919
- name: Install JS dependencies
2020
run: |
2121
yarn
@@ -25,8 +25,48 @@ jobs:
2525
- name: TypeScript
2626
run: |
2727
yarn test:ts
28+
ios:
29+
name: iOS
30+
runs-on: macos-latest
31+
steps:
32+
- name: Checkout
33+
uses: actions/checkout@v3
34+
- name: Cache /.ccache
35+
uses: actions/cache@v3
36+
with:
37+
path: .ccache
38+
key: ccache-ios-${{ hashFiles('yarn.lock') }}
39+
restore-keys: ccache-ios-
40+
- name: Set up Node.js
41+
uses: actions/[email protected]
42+
with:
43+
node-version: 16
44+
cache: yarn
45+
- name: Set up environment
46+
run: |
47+
brew bundle --file=.github/Brewfile.ios --no-lock
48+
touch .watchmanconfig
49+
- name: Install JS dependencies
50+
run: |
51+
yarn
52+
- name: Bundle JS
53+
run: |
54+
yarn bundle:ios --dev false
55+
- name: Install Pods
56+
run: |
57+
pod install
58+
working-directory: example/ios
59+
- name: Boot simulator
60+
run: |
61+
./scripts/ios_e2e.sh 'run_simulator'
62+
- name: Build
63+
run: |
64+
yarn build:e2e:ios
65+
- name: Test
66+
run: |
67+
yarn test:e2e:ios
2868
macos:
29-
name: 'macOS'
69+
name: macOS
3070
runs-on: macos-latest
3171
steps:
3272
- name: Checkout
@@ -35,28 +75,28 @@ jobs:
3575
uses: actions/cache@v3
3676
with:
3777
path: .ccache
38-
key: ${{ runner.os }}-ccache-${{ hashFiles('yarn.lock') }}
39-
restore-keys: ${{ runner.os }}-ccache-
78+
key: ccache-macos-${{ hashFiles('yarn.lock') }}
79+
restore-keys: ccache-macos-
4080
- name: Set up Node.js
4181
uses: actions/[email protected]
4282
with:
4383
node-version: 16
44-
cache: 'yarn'
84+
cache: yarn
4585
- name: Install JS dependencies
4686
run: |
4787
yarn
4888
- name: Bundle JS
4989
run: |
5090
yarn bundle:macos
51-
- name: Install macOS dependencies
91+
- name: Install Pods
5292
run: |
5393
pod install
5494
working-directory: example/macos
5595
- name: Build and test
5696
run: |
5797
yarn test:e2e:macos
5898
windows:
59-
name: 'Windows'
99+
name: Windows
60100
runs-on: windows-2019
61101
steps:
62102
- name: Set up MSBuild
@@ -69,7 +109,7 @@ jobs:
69109
uses: actions/[email protected]
70110
with:
71111
node-version: 16
72-
cache: 'yarn'
112+
cache: yarn
73113
- name: Install JS dependencies
74114
run: |
75115
yarn

scripts/macos_e2e.sh

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
#!/bin/bash
2+
set -eo pipefail
23

34
BUILD_ACTIONS="$@"
45

0 commit comments

Comments
 (0)