From e6c370b7f646f34df080b222264853ffb38c6dfe Mon Sep 17 00:00:00 2001 From: Alex Azarov Date: Thu, 10 Aug 2023 12:10:58 +0200 Subject: [PATCH 1/5] Update Xcode versions --- .circleci/config.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 320d5a9adb8..7da6d6a48c9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -443,7 +443,7 @@ jobs: parameters: xcode: type: string - default: "13.3.1" + default: "14.3.1" spm: type: boolean default: true @@ -478,12 +478,12 @@ jobs: parameters: xcode: type: string - default: "13.3.1" + default: "14.3.1" device: type: string iOS: type: string - default: "15.4" + default: "16.4" notify_success: type: boolean default: false @@ -509,12 +509,12 @@ jobs: parameters: xcode: type: string - default: "13.3.1" + default: "14.3.1" device: type: string iOS: type: string - default: "15.4" + default: "16.4" notify_success: type: boolean default: false @@ -655,14 +655,14 @@ jobs: spm-core-integration-test-job: macos: - xcode: "13.3.1" + xcode: "14.3.1" steps: - checkout - *prepare-netrc-file - *add-github-to-known-hosts - run: name: Build SPM Core integration test - command: cd Tests/SPMTest/CoreSPMTest && xcodebuild -scheme CoreSPMTest -destination "platform=iOS Simulator,OS=15.4,name=iPhone 13 Pro Max" build + command: cd Tests/SPMTest/CoreSPMTest && xcodebuild -scheme CoreSPMTest -destination "platform=iOS Simulator,OS=16.4,name=iPhone 13 Pro Max" build spm-ui-integration-test-job: macos: @@ -853,16 +853,16 @@ workflows: main-workflow: jobs: - build-job: - name: "Xcode_13.2.1_iOS_15.2_Debug" - xcode: "13.2.1" - iOS: "15.2" + name: "Xcode_14.3.1_iOS_15.2_Debug" + xcode: "14.3.1" + iOS: "16.4" device: "iPhone 13 Pro Max" codecoverage: false context: Slack Orb - build-job: - name: "Xcode_13.3.1_iOS_15.4_SPM_Debug" - xcode: "13.3.1" - iOS: "15.4" + name: "Xcode_14.3.1_iOS_15.4_SPM_Debug" + xcode: "14.3.1" + iOS: "16.4" device: "iPhone 13 Pro Max" spm: true codecoverage: true From ee97f49a338fbf6a5cbee99ffb1b023ec425e30d Mon Sep 17 00:00:00 2001 From: Alex Azarov Date: Thu, 10 Aug 2023 12:18:44 +0200 Subject: [PATCH 2/5] explicitly specify macOS resource_class on CircleCI --- .circleci/config.yml | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 7da6d6a48c9..84c9a305c78 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -374,6 +374,7 @@ jobs: default: "MapboxCoreNavigation" macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 environment: HOMEBREW_NO_AUTO_UPDATE: 1 steps: @@ -449,6 +450,7 @@ jobs: default: true macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 environment: HOMEBREW_NO_AUTO_UPDATE: 1 steps: @@ -468,6 +470,7 @@ jobs: default: "14.1.0" macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 environment: HOMEBREW_NO_AUTO_UPDATE: 1 steps: @@ -489,6 +492,7 @@ jobs: default: false macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 environment: HOMEBREW_NO_AUTO_UPDATE: 1 steps: @@ -523,7 +527,7 @@ jobs: default: true macos: xcode: << parameters.xcode >> - resource_class: macos.x86.metal.gen1 + resource_class: macos.x86.medium.gen2 environment: HOMEBREW_NO_AUTO_UPDATE: 1 steps: @@ -568,6 +572,7 @@ jobs: xcode: << parameters.xcode >> environment: HOMEBREW_NO_AUTO_UPDATE: 1 + resource_class: macos.x86.medium.gen2 steps: - checkout - when: @@ -625,6 +630,7 @@ jobs: xcode: 14.2.0 environment: HOMEBREW_NO_AUTO_UPDATE: 1 + resource_class: macos.x86.medium.gen2 steps: - checkout - *add-github-to-known-hosts @@ -656,6 +662,7 @@ jobs: spm-core-integration-test-job: macos: xcode: "14.3.1" + resource_class: macos.x86.medium.gen2 steps: - checkout - *prepare-netrc-file @@ -667,6 +674,7 @@ jobs: spm-ui-integration-test-job: macos: xcode: "14.1.0" + resource_class: macos.x86.medium.gen2 steps: - checkout - install-bash5 @@ -687,6 +695,7 @@ jobs: xcode: << parameters.xcode >> environment: HOMEBREW_NO_AUTO_UPDATE: 1 + resource_class: macos.x86.medium.gen2 steps: - checkout - *restore-cache-gems @@ -731,6 +740,7 @@ jobs: xcode: << parameters.xcode >> environment: HOMEBREW_NO_AUTO_UPDATE: 1 + resource_class: macos.x86.medium.gen2 steps: - checkout - *restore-cache-gems @@ -759,6 +769,7 @@ jobs: xcode: << parameters.xcode >> environment: HOMEBREW_NO_AUTO_UPDATE: 1 + resource_class: macos.x86.medium.gen2 steps: - checkout - *restore-cache-gems @@ -781,6 +792,7 @@ jobs: default: "14.1.0" macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 steps: - checkout - install-mbx-ci @@ -793,6 +805,7 @@ jobs: default: "14.1.0" macos: xcode: << parameters.xcode >> + resource_class: macos.x86.medium.gen2 steps: - checkout - install-mbx-ci @@ -916,7 +929,7 @@ workflows: name: "Build Example" context: Slack Orb - spm-core-integration-test-job: - name: "Xcode 13.3; iOS 15.4; SPM Core test" + name: "Xcode 14.3.1; iOS 16.4; SPM Core test" - build-job: name: "Core integration test; Xcode 14.1; iOS 16.1" xcode: "14.1.0" From 004274cd6c451c2d2fc0423d44d24693dde3897f Mon Sep 17 00:00:00 2001 From: Alex Azarov Date: Thu, 10 Aug 2023 12:37:49 +0200 Subject: [PATCH 3/5] Disable codesign for simulator builds --- .circleci/config.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 84c9a305c78..4c9cfb59cf4 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -407,7 +407,7 @@ jobs: xcode: << parameters.xcode >> - run: name: MapboxCoreNavigation - command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -project MapboxNavigation.xcodeproj -scheme << parameters.scheme >> -configuration << parameters.configuration >> <<# parameters.clean_build >>clean build <><<# parameters.test >>test <> <<# parameters.codecoverage >>-enableCodeCoverage YES<> ENABLE_TESTABILITY=YES + command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -project MapboxNavigation.xcodeproj -scheme << parameters.scheme >> -configuration << parameters.configuration >> <<# parameters.clean_build >>clean build <><<# parameters.test >>test <> <<# parameters.codecoverage >>-enableCodeCoverage YES<> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" - when: condition: << parameters.spm >> steps: @@ -460,7 +460,7 @@ jobs: - *add-github-to-known-hosts - run: name: Build Example app - command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=15.4,name=iPhone 13 Pro Max' -project MapboxNavigation-SPM.xcodeproj -scheme Example clean build + command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=15.4,name=iPhone 13 Pro Max' -project MapboxNavigation-SPM.xcodeproj -scheme Example clean build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" - notify-build-finished ios-trigger-metrics: @@ -669,7 +669,7 @@ jobs: - *add-github-to-known-hosts - run: name: Build SPM Core integration test - command: cd Tests/SPMTest/CoreSPMTest && xcodebuild -scheme CoreSPMTest -destination "platform=iOS Simulator,OS=16.4,name=iPhone 13 Pro Max" build + command: cd Tests/SPMTest/CoreSPMTest && xcodebuild -scheme CoreSPMTest -destination "platform=iOS Simulator,OS=16.4,name=iPhone 13 Pro Max" build CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" spm-ui-integration-test-job: macos: From 382988ff78f7619dcd425d7b938d1abd9ede05d7 Mon Sep 17 00:00:00 2001 From: Alex Azarov Date: Thu, 10 Aug 2023 12:55:18 +0200 Subject: [PATCH 4/5] Additional CircleCI fixes --- .circleci/config.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4c9cfb59cf4..88196d26e9b 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -419,7 +419,7 @@ jobs: command: xcodebuild -resolvePackageDependencies - run: name: MapboxNavigation-Package - command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -scheme MapboxNavigation-Package -configuration << parameters.configuration >> build <<# parameters.test >>test <> <<# parameters.codecoverage >>-enableCodeCoverage YES<> ENABLE_TESTABILITY=YES + command: xcodebuild -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=<< parameters.iOS >>,name=<< parameters.device >>' -scheme MapboxNavigation-Package -configuration << parameters.configuration >> build <<# parameters.test >>test <> <<# parameters.codecoverage >>-enableCodeCoverage YES<> ENABLE_TESTABILITY=YES CODE_SIGN_IDENTITY="" CODE_SIGNING_REQUIRED="NO" # FIXME: SPM test host is currently disabled, but we should run tests on the SPM test host job. When it is reenabled, delete this section that generates the code coverage report. - when: condition: << parameters.codecoverage >> @@ -866,17 +866,17 @@ workflows: main-workflow: jobs: - build-job: - name: "Xcode_14.3.1_iOS_15.2_Debug" + name: "Xcode_14.3.1_iOS_16.4_Debug" xcode: "14.3.1" iOS: "16.4" - device: "iPhone 13 Pro Max" + device: "iPhone 14 Pro Max" codecoverage: false context: Slack Orb - build-job: - name: "Xcode_14.3.1_iOS_15.4_SPM_Debug" + name: "Xcode_14.3.1_iOS_16.4_SPM_Debug" xcode: "14.3.1" iOS: "16.4" - device: "iPhone 13 Pro Max" + device: "iPhone 14 Pro Max" spm: true codecoverage: true context: Slack Orb From 8411fff05c35a64d27e1cdd1712575f206e10aac Mon Sep 17 00:00:00 2001 From: Alex Azarov Date: Thu, 10 Aug 2023 14:02:01 +0200 Subject: [PATCH 5/5] Use iOS 16.1 for snapshot tests --- .circleci/config.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 88196d26e9b..a9bf73551f5 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -873,9 +873,9 @@ workflows: codecoverage: false context: Slack Orb - build-job: - name: "Xcode_14.3.1_iOS_16.4_SPM_Debug" - xcode: "14.3.1" - iOS: "16.4" + name: "Xcode_14.1_iOS_16.1_SPM_Debug" + xcode: "14.1" + iOS: "16.1" device: "iPhone 14 Pro Max" spm: true codecoverage: true