Skip to content

Commit

Permalink
Try to parametrize executors to use the min Xcode version for some jobs
Browse files Browse the repository at this point in the history
  • Loading branch information
cipolleschi committed Oct 23, 2023
1 parent 0239776 commit 2899299
Show file tree
Hide file tree
Showing 6 changed files with 38 additions and 6 deletions.
12 changes: 12 additions & 0 deletions .circleci/configurations/commands.yml
Original file line number Diff line number Diff line change
Expand Up @@ -79,6 +79,18 @@ commands:
type: string

steps:
- run:
name: Move to Node 18 if Needed
command: |
node_version=$(node -v)
major_version=$(echo $node_version | cut -c 2- | cut -d '.' -f 1)
if [[ $major_version < 18 ]]; then
nvm install 18.18.0
nvm alias default 18.18.0
else
echo 'We have the right node version!'
fi
- restore_cache:
keys:
- << parameters.yarn_base_cache_key >>-{{ arch }}-{{ checksum "yarn.lock" }}
Expand Down
7 changes: 7 additions & 0 deletions .circleci/configurations/executors.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,3 +36,10 @@ executors:
resource_class: macos.x86.medium.gen2
environment:
- BUILD_FROM_SOURCE: true
reactnativeios-lts:
<<: *defaults
macos:
xcode: '14.1.0'
resource_class: macos.x86.medium.gen2
environment:
- BUILD_FROM_SOURCE: true
13 changes: 11 additions & 2 deletions .circleci/configurations/jobs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -386,7 +386,6 @@ jobs:
# JOBS: Test iOS Template
# -------------------------
test_ios_template:
executor: reactnativeios
parameters:
flavor:
default: "Debug"
Expand Down Expand Up @@ -424,6 +423,11 @@ jobs:
cocoapods_cache_key:
type: string
default: *template_cocoapods_cache_key
executor:
description: The executor to use
default: reactnativeios
type: string
executor: << parameters.executor >>
environment:
- PROJECT_NAME: "iOSTemplateProject"
- HERMES_WS_DIR: *hermes_workspace_root
Expand Down Expand Up @@ -492,7 +496,7 @@ jobs:
# JOBS: Test iOS RNTester
# -------------------------
test_ios_rntester:
executor: reactnativeios

parameters:
jsengine:
default: "Hermes"
Expand All @@ -517,6 +521,11 @@ jobs:
description: whether unit tests should run or not.
default: false
type: boolean
executor:
description: The executor to use
default: reactnativeios
type: string
executor: << parameters.executor >>
steps:
- checkout_code_with_cache
- run_yarn
Expand Down
2 changes: 2 additions & 0 deletions .circleci/configurations/test_workflows/testAll.yml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@
ruby_version: "3.2.0"
architecture: "NewArch"
flavor: "Debug"
executor: reactnativeios-lts
- test_ios_template:
requires:
- build_npm_package
Expand All @@ -82,6 +83,7 @@
name: "Test RNTester with Ruby 3.2.0"
ruby_version: "3.2.0"
architecture: "NewArch"
executor: reactnativeios-lts
- test_ios_rntester:
requires:
- build_hermes_macos
Expand Down
2 changes: 2 additions & 0 deletions .circleci/configurations/test_workflows/testIOS.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,6 +52,7 @@
ruby_version: "3.2.0"
architecture: "NewArch"
flavor: "Debug"
executor: reactnativeios-lts
- test_ios_template:
requires:
- build_npm_package
Expand All @@ -73,6 +74,7 @@
name: "Test RNTester with Ruby 3.2.0"
ruby_version: "3.2.0"
architecture: "NewArch"
executor: reactnativeios-lts
- test_ios_rntester:
requires:
- build_hermes_macos
Expand Down
8 changes: 4 additions & 4 deletions .circleci/configurations/top_level.yml
Original file line number Diff line number Diff line change
Expand Up @@ -91,12 +91,12 @@ references:
hermes_dsym_release_cache_key: &hermes_dsym_release_cache_key v1-hermes-release-dsym-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "/tmp/react-native-version" }}
# Cocoapods - RNTester
pods_cache_key: &pods_cache_key v10-pods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock.bak" }}-{{ checksum "packages/rn-tester/Podfile" }}
cocoapods_cache_key: &cocoapods_cache_key v9-cocoapods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock" }}-{{ checksum "packages/rn-tester/Podfile" }}-{{ checksum "/tmp/hermes/hermesversion" }}
rntester_podfile_lock_cache_key: &rntester_podfile_lock_cache_key v7-podfilelock-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile" }}-{{ checksum "/tmp/week_year" }}-{{ checksum "/tmp/hermes/hermesversion" }}
cocoapods_cache_key: &cocoapods_cache_key v10-cocoapods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile.lock" }}-{{ checksum "packages/rn-tester/Podfile" }}-{{ checksum "/tmp/hermes/hermesversion" }}
rntester_podfile_lock_cache_key: &rntester_podfile_lock_cache_key v8-podfilelock-{{ .Environment.CIRCLE_JOB }}-{{ checksum "packages/rn-tester/Podfile" }}-{{ checksum "/tmp/week_year" }}-{{ checksum "/tmp/hermes/hermesversion" }}

# Cocoapods - Template
template_cocoapods_cache_key: &template_cocoapods_cache_key v4-cocoapods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile.lock" }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile" }}-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "packages/rn-tester/Podfile.lock" }}
template_podfile_lock_cache_key: &template_podfile_lock_cache_key v4-podfilelock-{{ .Environment.CIRCLE_JOB }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile" }}-{{ checksum "/tmp/week_year" }}-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "packages/rn-tester/Podfile.lock" }}
template_cocoapods_cache_key: &template_cocoapods_cache_key v5-cocoapods-{{ .Environment.CIRCLE_JOB }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile.lock" }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile" }}-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "packages/rn-tester/Podfile.lock" }}
template_podfile_lock_cache_key: &template_podfile_lock_cache_key v5-podfilelock-{{ .Environment.CIRCLE_JOB }}-{{ checksum "/tmp/iOSTemplateProject/ios/Podfile" }}-{{ checksum "/tmp/week_year" }}-{{ checksum "/tmp/hermes/hermesversion" }}-{{ checksum "packages/rn-tester/Podfile.lock" }}

# Windows
windows_yarn_cache_key: &windows_yarn_cache_key v1-win-yarn-cache-{{ arch }}-{{ checksum "yarn.lock" }}
Expand Down

0 comments on commit 2899299

Please sign in to comment.