Skip to content

Commit 5f0d508

Browse files
cipolleschifacebook-github-bot
authored andcommitted
Stop testing the legacy architecture (#51738)
Summary: Following up the announcement made at AppJS, this change stops testing the legacy architecture in our CI ## Changelog: [Internal] - Stop testing the legacy architecture in CI Pull Request resolved: #51738 Test Plan: waiting for GHA Reviewed By: cortinico Differential Revision: D75791359 Pulled By: cipolleschi fbshipit-source-id: cb3159338835f49589fa6f495cfb9f47750825fe
1 parent df6eff4 commit 5f0d508

6 files changed

Lines changed: 11 additions & 61 deletions

File tree

.github/actions/maestro-android/action.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,6 @@ inputs:
2222
required: false
2323
default: "."
2424
description: The directory from which metro should be started
25-
architecture:
26-
required: false
27-
default: "NewArch"
28-
description: The react native architecture to test
2925

3026
runs:
3127
using: composite
@@ -76,13 +72,13 @@ runs:
7672
uses: actions/upload-artifact@v4.3.4
7773
if: always()
7874
with:
79-
name: e2e_android_${{ steps.normalize-app-id.outputs.app-id }}_report_${{ inputs.flavor }}_${{ inputs.architecture }}
75+
name: e2e_android_${{ steps.normalize-app-id.outputs.app-id }}_report_${{ inputs.flavor }}_NewArch
8076
path: |
8177
report.xml
8278
screen.mp4
8379
- name: Store Logs
8480
if: steps.run-tests.outcome == 'failure'
8581
uses: actions/upload-artifact@v4.3.4
8682
with:
87-
name: maestro-logs-android-${{ steps.normalize-app-id.outputs.app-id }}-${{ inputs.flavor }}-${{ inputs.architecture }}
83+
name: maestro-logs-android-${{ steps.normalize-app-id.outputs.app-id }}-${{ inputs.flavor }}-NewArch
8884
path: /tmp/MaestroLogs

.github/actions/maestro-ios/action.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,6 @@ inputs:
1818
required: false
1919
default: "."
2020
description: The directory from which metro should be started
21-
architecture:
22-
required: false
23-
default: "NewArch"
24-
description: The react native architecture to test
2521

2622
runs:
2723
using: composite
@@ -70,7 +66,7 @@ runs:
7066
if: always()
7167
uses: actions/upload-artifact@v4.3.4
7268
with:
73-
name: e2e_ios_${{ inputs.app-id }}_report_${{ inputs.flavor }}_${{ inputs.architecture }}
69+
name: e2e_ios_${{ inputs.app-id }}_report_${{ inputs.flavor }}_NewArch
7470
path: |
7571
video_record_1.mov
7672
video_record_2.mov
@@ -82,5 +78,5 @@ runs:
8278
if: failure() && steps.run-tests.outcome == 'failure'
8379
uses: actions/upload-artifact@v4.3.4
8480
with:
85-
name: maestro-logs-${{ inputs.app-id }}-${{ inputs.flavor }}-${{ inputs.architecture }}
81+
name: maestro-logs-${{ inputs.app-id }}-${{ inputs.flavor }}-NewArch
8682
path: /tmp/MaestroLogs

.github/actions/setup-xcode-build-cache/action.yml

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,6 @@ inputs:
77
flavor:
88
description: The flavor that is going to be built
99
default: Debug
10-
architecture:
11-
description: The architecture that is going to be built
12-
default: NewArch
1310
use-frameworks:
1411
description: Whether we are bulding with DynamicFrameworks or StaticLibraries
1512
default: StaticLibraries
@@ -27,9 +24,9 @@ runs:
2724
uses: actions/cache@v4
2825
with:
2926
path: packages/rn-tester/Podfile.lock
30-
key: v13-podfilelock-${{ github.job }}-${{ inputs.architecture }}-${{ inputs.flavor }}-${{ inputs.use-frameworks }}-${{ inputs.ruby-version }}-${{ hashfiles('packages/rn-tester/Podfile') }}-${{ inputs.hermes-version }}
27+
key: v13-podfilelock-${{ github.job }}-NewArch-${{ inputs.flavor }}-${{ inputs.use-frameworks }}-${{ inputs.ruby-version }}-${{ hashfiles('packages/rn-tester/Podfile') }}-${{ inputs.hermes-version }}
3128
- name: Cache cocoapods
3229
uses: actions/cache@v4
3330
with:
3431
path: packages/rn-tester/Pods
35-
key: v15-cocoapods-${{ github.job }}-${{ inputs.architecture }}-${{ inputs.flavor }}-${{ inputs.use-frameworks }}-${{ inputs.ruby-version }}-${{ hashfiles('packages/rn-tester/Podfile.lock') }}-${{ hashfiles('packages/rn-tester/Podfile') }}-${{ inputs.hermes-version}}
32+
key: v15-cocoapods-${{ github.job }}-NewArch-${{ inputs.flavor }}-${{ inputs.use-frameworks }}-${{ inputs.ruby-version }}-${{ hashfiles('packages/rn-tester/Podfile.lock') }}-${{ hashfiles('packages/rn-tester/Podfile') }}-${{ inputs.hermes-version}}

.github/actions/test-ios-helloworld/action.yml

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ inputs:
44
use-frameworks:
55
description: The dependency building and linking strategy to use. Must be one of "StaticLibraries", "DynamicFrameworks"
66
default: StaticLibraries
7-
architecture:
8-
description: The React Native architecture to Test. RNTester has always Fabric enabled, but we want to run integration test with the old arch setup. Must be one of "OldArch" or "NewArch"
9-
default: OldArch
107
ruby-version:
118
description: The version of ruby that must be used
129
default: 2.6.10
@@ -51,16 +48,12 @@ runs:
5148
- name: Print third-party folder
5249
shell: bash
5350
run: ls -lR /tmp/third-party
54-
- name: Install iOS dependencies - Configuration ${{ inputs.flavor }}; New Architecture ${{ inputs.architecture }}
51+
- name: Install iOS dependencies - Configuration ${{ inputs.flavor }};
5552
shell: bash
5653
run: |
5754
cd packages/helloworld
5855
args=()
5956
60-
if [[ ${{ inputs.architecture }} == "OldArch" ]]; then
61-
args+=(--arch old)
62-
fi
63-
6457
if [[ ${{ inputs.use-frameworks }} == "DynamicFrameworks" ]]; then
6558
args+=(--frameworks dynamic)
6659
fi

.github/actions/test-ios-rntester/action.yml

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,6 @@ inputs:
44
use-frameworks:
55
description: The dependency building and linking strategy to use. Must be one of "StaticLibraries", "DynamicFrameworks"
66
default: StaticLibraries
7-
architecture:
8-
description: The React Native architecture to Test. RNTester has always Fabric enabled, but we want to run integration test with the old arch setup
9-
default: NewArch
107
ruby-version:
118
description: The version of ruby that must be used
129
default: 2.6.10
@@ -101,7 +98,6 @@ runs:
10198
uses: ./.github/actions/setup-xcode-build-cache
10299
with:
103100
hermes-version: ${{ inputs.hermes-version }}
104-
architecture: ${{ inputs.architecture }}
105101
use-frameworks: ${{ inputs.use-frameworks }}
106102
flavor: ${{ inputs.flavor }}
107103
ruby-version: ${{ inputs.ruby-version }}
@@ -114,10 +110,6 @@ runs:
114110
export USE_FRAMEWORKS=dynamic
115111
fi
116112
117-
if [[ ${{ inputs.architecture }} == "OldArch" ]]; then
118-
export RCT_NEW_ARCH_ENABLED=0
119-
fi
120-
121113
export RCT_USE_LOCAL_RN_DEP="/tmp/third-party/ReactNativeDependencies${{ inputs.flavor }}.xcframework.tar.gz"
122114
cd packages/rn-tester
123115
@@ -162,7 +154,7 @@ runs:
162154
if: ${{ inputs.use-frameworks == 'StaticLibraries' && inputs.ruby-version == '2.6.10' }} # This is needed to avoid conflicts with the artifacts
163155
uses: actions/upload-artifact@v4.3.4
164156
with:
165-
name: RNTesterApp-${{ inputs.architecture }}-${{ inputs.flavor }}
157+
name: RNTesterApp-NewArch-${{ inputs.flavor }}
166158
path: ${{ env.app-path }}
167159
- name: Store test results
168160
if: ${{ inputs.run-unit-tests == 'true' }}

.github/workflows/test-all.yml

Lines changed: 3 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -168,18 +168,13 @@ jobs:
168168
strategy:
169169
fail-fast: false
170170
matrix:
171-
architecture: [NewArch, OldArch]
172171
flavor: [Debug, Release]
173-
exclude: # We don't want to test the Old Arch in Release for E2E
174-
- architecture: OldArch
175-
flavor: Release
176172
steps:
177173
- name: Checkout
178174
uses: actions/checkout@v4
179175
- name: Run it
180176
uses: ./.github/actions/test-ios-rntester
181177
with:
182-
architecture: ${{ matrix.architecture }}
183178
run-unit-tests: "false"
184179
use-frameworks: StaticLibraries
185180
hermes-version: ${{ needs.prepare_hermes_workspace.outputs.hermes-version }}
@@ -197,15 +192,14 @@ jobs:
197192
strategy:
198193
fail-fast: false
199194
matrix:
200-
architecture: [NewArch]
201195
flavor: [Debug, Release]
202196
steps:
203197
- name: Checkout
204198
uses: actions/checkout@v4
205199
- name: Download App
206200
uses: actions/download-artifact@v4
207201
with:
208-
name: RNTesterApp-${{ matrix.architecture }}-${{ matrix.flavor }}
202+
name: RNTesterApp-NewArch-${{ matrix.flavor }}
209203
path: /tmp/RNTesterBuild/RNTester.app
210204
- name: Check downloaded folder content
211205
run: ls -lR /tmp/RNTesterBuild
@@ -230,7 +224,6 @@ jobs:
230224
fail-fast: false
231225
matrix:
232226
flavor: [Debug, Release]
233-
architecture: [OldArch, NewArch]
234227
steps:
235228
- name: Checkout
236229
uses: actions/checkout@v4
@@ -284,10 +277,6 @@ jobs:
284277
cd /tmp/RNTestProject/ios
285278
bundle install
286279
NEW_ARCH_ENABLED=1
287-
if [[ ${{ matrix.architecture }} == "OldArch" ]]; then
288-
echo "Disable the New Architecture"
289-
NEW_ARCH_ENABLED=0
290-
fi
291280
292281
export RCT_USE_LOCAL_RN_DEP=/tmp/third-party/ReactNativeDependencies${{ matrix.flavor }}.xcframework.tar.gz
293282
HERMES_ENGINE_TARBALL_PATH=$HERMES_PATH RCT_NEW_ARCH_ENABLED=$NEW_ARCH_ENABLED bundle exec pod install
@@ -307,7 +296,6 @@ jobs:
307296
maestro-flow: ./scripts/e2e/.maestro/
308297
flavor: ${{ matrix.flavor }}
309298
working-directory: /tmp/RNTestProject
310-
architecture: ${{ matrix.architecture }}
311299

312300
test_e2e_android_templateapp:
313301
if: ${{ github.ref == 'refs/heads/main' || contains(github.ref, 'stable') || inputs.run-e2e-tests }}
@@ -317,7 +305,6 @@ jobs:
317305
fail-fast: false
318306
matrix:
319307
flavor: [debug, release]
320-
architecture: [OldArch, NewArch]
321308
steps:
322309
- name: Checkout
323310
uses: actions/checkout@v4
@@ -363,11 +350,6 @@ jobs:
363350
cd /tmp/RNTestProject
364351
echo "react.internal.mavenLocalRepo=$MAVEN_LOCAL" >> android/gradle.properties
365352
366-
if [[ ${{matrix.architecture}} == "OldArch" ]]; then
367-
echo "Disabling the New Architecture"
368-
sed -i 's/newArchEnabled=true/newArchEnabled=false/' android/gradle.properties
369-
fi
370-
371353
# Build
372354
cd android
373355
CAPITALIZED_FLAVOR=$(echo "${{ matrix.flavor }}" | awk '{print toupper(substr($0, 1, 1)) substr($0, 2)}')
@@ -383,7 +365,6 @@ jobs:
383365
install-java: 'false'
384366
flavor: ${{ matrix.flavor }}
385367
working-directory: /tmp/RNTestProject
386-
architecture: ${{ matrix.architecture }}
387368

388369
build_hermesc_linux:
389370
runs-on: ubuntu-latest
@@ -517,7 +498,6 @@ jobs:
517498
fail-fast: false
518499
matrix:
519500
flavor: [Debug, Release]
520-
architecture: [NewArch, OldArch]
521501
steps:
522502
- name: Checkout
523503
uses: actions/checkout@v4
@@ -542,22 +522,19 @@ jobs:
542522
- name: Prepare the Helloworld application
543523
shell: bash
544524
run: node ./scripts/e2e/init-project-e2e.js --useHelloWorld --pathToLocalReactNative "$GITHUB_WORKSPACE/build/$(cat build/react-native-package-version)"
545-
- name: Build the Helloworld application for ${{ matrix.flavor }} with Architecture set to ${{ matrix.architecture }}.
525+
- name: Build the Helloworld application for ${{ matrix.flavor }} with Architecture set to New Architecture.
546526
shell: bash
547527
run: |
548528
cd packages/helloworld/android
549529
args=()
550-
if [[ ${{ matrix.architecture }} == "OldArch" ]]; then
551-
args+=(--arch old)
552-
fi
553530
if [[ ${{ matrix.flavor }} == "Release" ]]; then
554531
args+=(--prod)
555532
fi
556533
yarn build android "${args[@]}" -P reactNativeArchitectures="$TARGET_ARCHITECTURE" -P react.internal.mavenLocalRepo="/tmp/maven-local"
557534
- name: Upload artifact
558535
uses: actions/upload-artifact@v4.3.4
559536
with:
560-
name: helloworld-apk-${{ matrix.flavor }}-${{ matrix.architecture }}-hermes
537+
name: helloworld-apk-${{ matrix.flavor }}-NewArch-hermes
561538
path: ./packages/helloworld/android/app/build/outputs/apk/
562539
compression-level: 0
563540

@@ -574,7 +551,6 @@ jobs:
574551
- uses: ./.github/actions/test-ios-helloworld
575552
with:
576553
ruby-version: 3.2.0
577-
architecture: NewArch
578554
flavor: Debug
579555
hermes-version: ${{ needs.prepare_hermes_workspace.outputs.hermes-version }}
580556
react-native-version: ${{ needs.prepare_hermes_workspace.outputs.react-native-version }}

0 commit comments

Comments
 (0)