From dc9556837588b2fb11a29ef25ad75cced07c6ac5 Mon Sep 17 00:00:00 2001 From: Riccardo Cipolleschi Date: Wed, 29 Nov 2023 04:17:48 -0800 Subject: [PATCH] Remove duplicated jobs in CircleCI (#41698) Summary: Pull Request resolved: https://github.com/facebook/react-native/pull/41698 With the previous changes on the Pod configuration, the build setup for the New and Old architecture are the same. The only observable difference happens at runtime. This change: 1. Removes the build job that are split by architecture (which is now duplicated work) 2. Add two more test jobs to run runtime tests (unit and integration test) to make sure that the two architectures continue working. ## Changelog: [Internal] - [CI] Remove duplicated build jobs, add tests jobs Reviewed By: cortinico Differential Revision: D51659275 fbshipit-source-id: 769c9ee004e7f4f1a7444f39c02b7083e007b780 --- .../configurations/test_workflows/testAll.yml | 18 +++++++----------- .../configurations/test_workflows/testIOS.yml | 18 +++++++----------- 2 files changed, 14 insertions(+), 22 deletions(-) diff --git a/.circleci/configurations/test_workflows/testAll.yml b/.circleci/configurations/test_workflows/testAll.yml index fe497a7922a..7afd7d2171f 100644 --- a/.circleci/configurations/test_workflows/testAll.yml +++ b/.circleci/configurations/test_workflows/testAll.yml @@ -62,18 +62,17 @@ flavor: "Debug" executor: reactnativeios-lts - test_ios_template: + architecture: "OldArch" requires: - build_npm_package matrix: parameters: - architecture: ["NewArch", "OldArch"] flavor: ["Debug", "Release"] jsengine: ["Hermes", "JSC"] use_frameworks: ["StaticLibraries", "DynamicFrameworks"] exclude: # This config is tested with Ruby 3.2.0. Let's not double test it. - - architecture: "NewArch" - flavor: "Debug" + - flavor: "Debug" jsengine: "Hermes" use_frameworks: "StaticLibraries" - test_ios_rntester: @@ -84,33 +83,30 @@ architecture: "NewArch" executor: reactnativeios-lts - test_ios_rntester: + architecture: "NewArch" requires: - build_hermes_macos matrix: parameters: - architecture: ["NewArch", "OldArch"] jsengine: ["Hermes", "JSC"] use_frameworks: ["StaticLibraries", "DynamicFrameworks"] exclude: # Tested by test_ios-Hermes - - architecture: "OldArch" - jsengine: "Hermes" + - jsengine: "Hermes" use_frameworks: "StaticLibraries" # Tested by test_ios-JSC - - architecture: "OldArch" - jsengine: "JSC" + - jsengine: "JSC" use_frameworks: "StaticLibraries" # Tested with Ruby 3.2.0, do not test this twice. - - architecture: "NewArch" - jsengine: "Hermes" + - jsengine: "Hermes" use_frameworks: "StaticLibraries" - test_ios_rntester: run_unit_tests: true - architecture: "OldArch" use_frameworks: "StaticLibraries" ruby_version: "2.6.10" requires: - build_hermes_macos matrix: parameters: + architecture: ["OldArch", "NewArch"] jsengine: ["Hermes", "JSC"] diff --git a/.circleci/configurations/test_workflows/testIOS.yml b/.circleci/configurations/test_workflows/testIOS.yml index bff9e73786d..eb6cf50a527 100644 --- a/.circleci/configurations/test_workflows/testIOS.yml +++ b/.circleci/configurations/test_workflows/testIOS.yml @@ -53,18 +53,17 @@ flavor: "Debug" executor: reactnativeios-lts - test_ios_template: + architecture: "OldArch" requires: - build_npm_package matrix: parameters: - architecture: ["NewArch", "OldArch"] flavor: ["Debug", "Release"] jsengine: ["Hermes", "JSC"] use_frameworks: ["StaticLibraries", "DynamicFrameworks"] exclude: # Tested with Ruby 3.2.0, let's not double test this - - architecture: "NewArch" - flavor: "Debug" + - flavor: "Debug" jsengine: "Hermes" use_frameworks: "StaticLibraries" - test_ios_rntester: @@ -75,33 +74,30 @@ architecture: "NewArch" executor: reactnativeios-lts - test_ios_rntester: + architecture: "NewArch" requires: - build_hermes_macos matrix: parameters: - architecture: ["NewArch", "OldArch"] jsengine: ["Hermes", "JSC"] use_frameworks: ["StaticLibraries", "DynamicFrameworks"] exclude: # Tested by test_ios-Hermes - - architecture: "OldArch" - jsengine: "Hermes" + - jsengine: "Hermes" use_frameworks: "StaticLibraries" # Tested by test_ios-JSC - - architecture: "OldArch" - jsengine: "JSC" + - jsengine: "JSC" use_frameworks: "StaticLibraries" # Tested with Ruby 3.2.0, let's not double test this - - architecture: "NewArch" - jsengine: "Hermes" + - jsengine: "Hermes" use_frameworks: "StaticLibraries" - test_ios_rntester: run_unit_tests: true - architecture: "OldArch" use_frameworks: "StaticLibraries" ruby_version: "2.6.10" requires: - build_hermes_macos matrix: parameters: + architecture: ["NewArch", "OldArch"] jsengine: ["Hermes", "JSC"]