2424 auth_token_check :
2525 uses : ./.github/workflows/skip-ci-noauth.yml
2626 secrets : inherit
27-
2827 metrics :
2928 runs-on : ${{ matrix.runs-on }}
3029 needs : [diff_check, auth_token_check]
3938 platform : ["ios", "android"]
4039 include :
4140 - platform : ios
42- runs-on : macos-13
41+ runs-on : macos-14
4342 name : iOS
4443 appPlain : performance-tests/test-app-plain.ipa
4544 - platform : android
5352 - uses : ./.github/actions/disk-cleanup
5453 if : ${{ matrix.platform == 'android' }}
5554
56- - run : sudo xcode-select -s /Applications/Xcode_14 .2.app/Contents/Developer
55+ - run : sudo xcode-select -s /Applications/Xcode_16 .2.app/Contents/Developer
5756 if : ${{ matrix.platform == 'ios' }}
5857
5958 - run : npm i -g corepack
@@ -67,13 +66,17 @@ jobs:
6766 - uses : actions/setup-java@v5
6867 with :
6968 java-version : ' 17'
70- distribution : " adopt"
69+ distribution : ' adopt'
70+
7171 - name : Gradle cache
7272 uses : gradle/gradle-build-action@v3
73+
7374 - name : Install Global Dependencies
7475 run : npm i -g react-native-cli @sentry/cli
76+
7577 - name : Install Dependencies
7678 run : yarn install
79+
7780 - name : Build SDK
7881 run : yarn build
7982
8790 # we removed the lock file of the app due to monorepo changes, we use the package.json instead
8891 # to avoid frequent rebuilds of the app
8992 key : ${{ github.workflow }}-${{ github.job }}-appplain-${{ matrix.platform }}-${{ matrix.rn-architecture }}-${{ hashFiles('performance-tests/TestAppSentry/package.json') }}
93+
9094 - name : Build app plain
9195 if : steps.app-plain-cache.outputs['cache-hit'] != 'true'
9296 working-directory : ./performance-tests/TestAppPlain
@@ -114,13 +118,15 @@ jobs:
114118 MATCH_GIT_PRIVATE_KEY : ${{ secrets.MATCH_GIT_PRIVATE_KEY }}
115119 MATCH_PASSWORD : ${{ secrets.MATCH_PASSWORD }}
116120 MATCH_USERNAME : ${{ secrets.MATCH_USERNAME }}
121+
117122 - name : Build app with Sentry
118123 working-directory : ./performance-tests/TestAppSentry
119124 run : |
120125 cd ${{ matrix.platform }}
121126 if [[ "${{ matrix.platform }}" == "android" ]]; then
122127 if [[ ${{ matrix.rn-architecture }} == 'new' ]]; then
123128 perl -i -pe's/newArchEnabled=false/newArchEnabled=true/g' gradle.properties
129+ ./gradlew generateCodegenArtifactsFromSchema
124130 fi
125131 ./gradlew assembleRelease
126132 else
@@ -142,7 +148,7 @@ jobs:
142148 MATCH_PASSWORD : ${{ secrets.MATCH_PASSWORD }}
143149 MATCH_USERNAME : ${{ secrets.MATCH_USERNAME }}
144150 - name : Collect apps metrics
145- uses : getsentry/action-app-sdk-overhead-metrics@c9eca50e02d180ee07a02952c062b2f3f545f735
151+ uses : getsentry/action-app-sdk-overhead-metrics@5f2d99b8e5a7b833386524924d24320501099a44
146152 with :
147153 name : ${{ matrix.name }} (${{ matrix.rn-architecture }})
148154 config : ./performance-tests/metrics-${{ matrix.platform }}.yml
@@ -164,7 +170,7 @@ jobs:
164170 strategy :
165171 fail-fast : false # keeps matrix running if one fails
166172 matrix :
167- rn-version : ['0.65.3 ', '0.81.0']
173+ rn-version : ['0.71.11 ', '0.81.0']
168174 rn-architecture : ['legacy', 'new']
169175 platform : ['android', 'ios']
170176 build-type : ['production']
@@ -176,7 +182,7 @@ jobs:
176182 xcode-version : ' 16.2'
177183 runs-on : macos-14
178184 - platform : ios
179- rn-version : ' 0.65.3 '
185+ rn-version : ' 0.71.11 '
180186 xcode-version : ' 14.2'
181187 runs-on : macos-13
182188 - platform : android
@@ -185,14 +191,14 @@ jobs:
185191 # exclude JSC for new RN versions (keeping the matrix manageable)
186192 - rn-version : ' 0.81.0'
187193 engine : ' jsc'
188- # exclude all rn versions lower than 0.70 .0 for new architecture
189- - rn-version : ' 0.65.3 '
194+ # exclude all rn versions lower than 0.80 .0 for new architecture
195+ - rn-version : ' 0.71.11 '
190196 rn-architecture : ' new'
191197 # exlude old rn version for use frameworks builds (to minimalize the matrix)
192- - rn-version : ' 0.65.3 '
198+ - rn-version : ' 0.71.11 '
193199 platform : ' ios'
194200 ios-use-frameworks : ' static'
195- - rn-version : ' 0.65.3 '
201+ - rn-version : ' 0.71.11 '
196202 platform : ' ios'
197203 ios-use-frameworks : ' dynamic'
198204 # use frameworks is ios only feature
@@ -238,7 +244,7 @@ jobs:
238244
239245 - uses : actions/setup-java@v5
240246 with :
241- java-version : ${{ matrix.rn-version == '0.65.3' && '11' || ' 17' }}
247+ java-version : ' 17'
242248 distribution : ' adopt'
243249
244250 - name : Gradle cache
@@ -258,15 +264,6 @@ jobs:
258264 - name : Setup Plain RN ${{ matrix.rn-version }} App
259265 run : ./dev-packages/e2e-tests/cli.mjs ${{ matrix.platform }} --create
260266
261- # The old node has to be enabled after creating the test app
262- # to avoid issues with the old node version
263- - run : corepack disable
264- - uses : actions/setup-node@v6
265- if : ${{ matrix.rn-version == '0.65.3' }}
266- with :
267- package-manager-cache : false
268- node-version : 16
269-
270267 - uses : ruby/setup-ruby@v1
271268 if : ${{ matrix.platform == 'ios' }}
272269 with :
@@ -304,30 +301,18 @@ jobs:
304301 strategy :
305302 fail-fast : false # keeps matrix running if one fails
306303 matrix :
307- rn-version : ['0.65.3', '0. 81.0']
304+ rn-version : ['0.81.0']
308305 rn-architecture : ['legacy', 'new']
309306 platform : ['android', 'ios']
310307 build-type : ['production']
311- ios-use-frameworks : ['no'] # test only no framworks
312- engine : ['hermes', 'jsc' ]
308+ ios-use-frameworks : ['no'] # test only no frameworks
309+ engine : ['hermes']
313310 include :
314311 - platform : ios
315312 rn-version : ' 0.81.0'
316313 runs-on : macos-14
317- - platform : ios
318- rn-version : ' 0.65.3'
319- runs-on : macos-14
320314 - platform : android
321315 runs-on : ubuntu-latest
322- exclude :
323- # exclude all rn versions lower than 0.70.0 for new architecture
324- - rn-version : ' 0.65.3'
325- rn-architecture : ' new'
326- # e2e test only the default combinations
327- - rn-version : ' 0.65.3'
328- engine : ' hermes'
329- - rn-version : ' 0.81.0'
330- engine : ' jsc'
331316
332317 steps :
333318 - uses : actions/checkout@v5
0 commit comments