1010 types :
1111 - checks_requested
1212
13+ concurrency :
14+ group : ${{ github.workflow }}-${{ github.ref }}
15+ cancel-in-progress : true
16+
1317jobs :
14- # lint:
15- # runs-on: ubuntu-latest
16- # steps:
17- # - name: Checkout
18- # uses: actions/checkout@v3
18+ lint :
19+ runs-on : ubuntu-latest
1920
20- # - name: Setup
21- # uses: ./.github/actions/setup
21+ steps :
22+ - name : Checkout
23+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
2224
23- # - name: Lint files
24- # run: yarn lint
25+ - name : Setup
26+ uses : ./.github/actions/setup
2527
26- # - name: Typecheck files
27- # run: yarn typecheck
28+ - name : Lint files
29+ run : yarn lint
2830
29- # test:
30- # runs-on: ubuntu-latest
31- # steps:
32- # - name: Checkout
33- # uses: actions/checkout@v3
31+ - name : Typecheck files
32+ run : yarn typecheck
3433
35- # - name: Setup
36- # uses: ./.github/actions/setup
34+ test :
35+ runs-on : ubuntu-latest
36+
37+ steps :
38+ - name : Checkout
39+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
40+
41+ - name : Setup
42+ uses : ./.github/actions/setup
3743
38- # - name: Run unit tests
39- # run: yarn test --maxWorkers=2 --coverage
44+ - name : Run unit tests
45+ run : yarn test --maxWorkers=2 --coverage
4046
4147 build-library :
4248 runs-on : ubuntu-latest
49+
4350 steps :
4451 - name : Checkout
45- uses : actions/checkout@v3
52+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
4653
4754 - name : Setup
4855 uses : ./.github/actions/setup
@@ -52,17 +59,19 @@ jobs:
5259
5360 build-android :
5461 runs-on : ubuntu-latest
62+
5563 env :
5664 TURBO_CACHE_DIR : .turbo/android
65+
5766 steps :
5867 - name : Checkout
59- uses : actions/checkout@v3
68+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
6069
6170 - name : Setup
6271 uses : ./.github/actions/setup
6372
6473 - name : Cache turborepo for Android
65- uses : actions/cache@v3
74+ uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
6675 with :
6776 path : ${{ env.TURBO_CACHE_DIR }}
6877 key : ${{ runner.os }}-turborepo-android-${{ hashFiles('yarn.lock') }}
7988
8089 - name : Install JDK
8190 if : env.turbo_cache_hit != 1
82- uses : actions/setup-java@v3
91+ uses : actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00 # v4.7.1
8392 with :
8493 distribution : ' zulu'
8594 java-version : ' 17'
8998 run : |
9099 /bin/bash -c "yes | $ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager --licenses > /dev/null"
91100
101+
92102 - name : Cache Gradle
93103 if : env.turbo_cache_hit != 1
94- uses : actions/cache@v3
104+ uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
95105 with :
96106 path : |
97107 ~/.gradle/wrapper
@@ -102,56 +112,70 @@ jobs:
102112
103113 - name : Build example for Android
104114 env :
105- JAVA_OPTS : ' -XX:MaxHeapSize=6g'
115+ JAVA_OPTS : " -XX:MaxHeapSize=6g"
106116 run : |
107117 yarn turbo run build:android --cache-dir="${{ env.TURBO_CACHE_DIR }}"
108118
109- # build-ios:
110- # runs-on: macos-14
111- # env:
112- # TURBO_CACHE_DIR: .turbo/ios
113- # steps:
114- # - name: Checkout
115- # uses: actions/checkout@v3
116-
117- # - name: Setup
118- # uses: ./.github/actions/setup
119-
120- # - name: Cache turborepo for iOS
121- # uses: actions/cache@v3
122- # with:
123- # path: ${{ env.TURBO_CACHE_DIR }}
124- # key: ${{ runner.os }}-turborepo-ios-${{ hashFiles('yarn.lock') }}
125- # restore-keys: |
126- # ${{ runner.os }}-turborepo-ios-
127-
128- # - name: Check turborepo cache for iOS
129- # run: |
130- # TURBO_CACHE_STATUS=$(node -p "($(yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}" --dry=json)).tasks.find(t => t.task === 'build:ios').cache.status")
131-
132- # if [[ $TURBO_CACHE_STATUS == "HIT" ]]; then
133- # echo "turbo_cache_hit=1" >> $GITHUB_ENV
134- # fi
135-
136- # - name: Cache cocoapods
137- # if: env.turbo_cache_hit != 1
138- # id: cocoapods-cache
139- # uses: actions/cache@v3
140- # with:
141- # path: |
142- # **/ios/Pods
143- # key: ${{ runner.os }}-cocoapods-${{ hashFiles('example/ios/Podfile.lock') }}
144- # restore-keys: |
145- # ${{ runner.os }}-cocoapods-
146-
147- # - name: Install cocoapods
148- # if: env.turbo_cache_hit != 1 && steps.cocoapods-cache.outputs.cache-hit != 'true'
149- # run: |
150- # cd example/ios
151- # pod install
152- # env:
153- # NO_FLIPPER: 1
154-
155- # - name: Build example for iOS
156- # run: |
157- # yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}"
119+ build-ios :
120+ runs-on : macos-latest
121+
122+ env :
123+ XCODE_VERSION : 26
124+ TURBO_CACHE_DIR : .turbo/ios
125+ RCT_USE_RN_DEP : 1
126+ RCT_USE_PREBUILT_RNCORE : 1
127+
128+ steps :
129+ - name : Checkout
130+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
131+
132+ - name : Setup
133+ uses : ./.github/actions/setup
134+
135+ - name : Cache turborepo for iOS
136+ uses : actions/cache@5a3ec84eff668545956fd18022155c47e93e2684 # v4.2.3
137+ with :
138+ path : ${{ env.TURBO_CACHE_DIR }}
139+ key : ${{ runner.os }}-turborepo-ios-${{ hashFiles('yarn.lock') }}
140+ restore-keys : |
141+ ${{ runner.os }}-turborepo-ios-
142+
143+ - name : Check turborepo cache for iOS
144+ run : |
145+ TURBO_CACHE_STATUS=$(node -p "($(yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}" --dry=json)).tasks.find(t => t.task === 'build:ios').cache.status")
146+
147+ if [[ $TURBO_CACHE_STATUS == "HIT" ]]; then
148+ echo "turbo_cache_hit=1" >> $GITHUB_ENV
149+ fi
150+
151+ - name : Use appropriate Xcode version
152+ if : env.turbo_cache_hit != 1
153+ uses : maxim-lobanov/setup-xcode@60606e260d2fc5762a71e64e74b2174e8ea3c8bd # v1.6.0
154+ with :
155+ xcode-version : ${{ env.XCODE_VERSION }}
156+
157+ - name : Install cocoapods
158+ if : env.turbo_cache_hit != 1 && steps.cocoapods-cache.outputs.cache-hit != 'true'
159+ run : |
160+ cd example
161+ bundle install
162+ bundle exec pod repo update --verbose
163+ bundle exec pod install --project-directory=ios
164+
165+ - name : Build example for iOS
166+ run : |
167+ yarn turbo run build:ios --cache-dir="${{ env.TURBO_CACHE_DIR }}"
168+
169+ build-web :
170+ runs-on : ubuntu-latest
171+
172+ steps :
173+ - name : Checkout
174+ uses : actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
175+
176+ - name : Setup
177+ uses : ./.github/actions/setup
178+
179+ - name : Build example for Web
180+ run : |
181+ yarn example build:web
0 commit comments