From 2e5553858998207a40c5a7cbec18ad05eeaacaac Mon Sep 17 00:00:00 2001 From: Roman Gardukevich Date: Thu, 11 Jul 2024 15:24:40 +0300 Subject: [PATCH] Release 11.5: Address Apple Development certificate update (#2220) --- .fastlane/Fastfile | 25 ++++++++---- Gemfile | 3 +- Gemfile.lock | 95 +++++++++++++++++++++++----------------------- 3 files changed, 67 insertions(+), 56 deletions(-) diff --git a/.fastlane/Fastfile b/.fastlane/Fastfile index 05ca046c7394..145a0166e485 100644 --- a/.fastlane/Fastfile +++ b/.fastlane/Fastfile @@ -22,8 +22,19 @@ platform :ios do match(type: "appstore") end + private_lane :api_key_if_needed do + # We recommend to have api key on local machines to improve sign-in experience + # While on the CI we will use api key components for the authentication + # You can setup the api key by following the guide: https://github.com/mapbox/apple-internal/blob/master/guides/Modern%20authentification.md + file_path = ENV['APP_STORE_CONNECT_API_KEY_PATH'] + + if file_path.nil? || !File.exist?(file_path) + app_store_connect_api_key + end + end + lane :build_examples_tests do - app_store_connect_api_key + api_key_if_needed setup_circle_ci sync_code_signing update_code_signing_settings( @@ -32,7 +43,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["mapbox.ExamplesUITests.xctrunner"], targets: ["ExamplesUITests"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", ) update_code_signing_settings( use_automatic_signing: false, @@ -40,7 +51,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["com.mapbox.examples"], targets: ["Examples"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", ) run_tests( workspace: 'Apps/Apps.xcworkspace', @@ -85,7 +96,7 @@ platform :ios do end lane :beta do - app_store_connect_api_key # Generate API Token + api_key_if_needed # Generate API Token increment_build_number( build_number: latest_testflight_build_number + 1, xcodeproj: 'Apps/Examples/Examples.xcodeproj' @@ -104,7 +115,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["com.mapbox.examples"], targets: ["Examples"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", entitlements_file_path: "Examples/Examples_CarPlay.entitlements" ) sync_code_signing(type: "appstore") @@ -123,7 +134,7 @@ platform :ios do lane :build_tests do sh("cd .. && xcodegen") - app_store_connect_api_key # Generate API Token + api_key_if_needed # Generate API Token setup_circle_ci sync_code_signing(app_identifier: "com.mapbox.MapboxMapsTestHost") update_code_signing_settings( @@ -132,7 +143,7 @@ platform :ios do team_id: "GJZR2MEM28", # Developer Portal Team ID, profile_name: lane_context[SharedValues::MATCH_PROVISIONING_PROFILE_MAPPING]["com.mapbox.MapboxMapsTestHost"], targets: ["MapboxTestHost"], - code_sign_identity: "Apple Development: Machiney McMachineface", + code_sign_identity: "Apple Development: Created via API", ) run_tests( project: 'MapboxMaps.xcodeproj', diff --git a/Gemfile b/Gemfile index a65a44279727..f407285aacad 100644 --- a/Gemfile +++ b/Gemfile @@ -1,6 +1,7 @@ source "https://rubygems.org" -gem "fastlane", '>=2.219.0' +# Fastlane 2.220.0 introduced a new crypto algo for Match, which is not compatible with the pre-existed versions +gem "fastlane", '= 2.219.0' plugins_path = File.join(File.dirname(__FILE__), '.fastlane', 'Pluginfile') eval_gemfile(plugins_path) if File.exist?(plugins_path) diff --git a/Gemfile.lock b/Gemfile.lock index 941426c227a8..e228d6b32fc9 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -18,24 +18,24 @@ GEM base64 nkf rexml - addressable (2.8.1) - public_suffix (>= 2.0.2, < 6.0) - artifactory (3.0.15) + addressable (2.8.7) + public_suffix (>= 2.0.2, < 7.0) + artifactory (3.0.17) atomos (0.1.3) aws-eventstream (1.3.0) - aws-partitions (1.894.0) - aws-sdk-core (3.191.3) + aws-partitions (1.955.0) + aws-sdk-core (3.201.1) aws-eventstream (~> 1, >= 1.3.0) aws-partitions (~> 1, >= 1.651.0) aws-sigv4 (~> 1.8) jmespath (~> 1, >= 1.6.1) - aws-sdk-kms (1.77.0) - aws-sdk-core (~> 3, >= 3.191.0) - aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.143.0) - aws-sdk-core (~> 3, >= 3.191.0) + aws-sdk-kms (1.88.0) + aws-sdk-core (~> 3, >= 3.201.0) + aws-sigv4 (~> 1.5) + aws-sdk-s3 (1.156.0) + aws-sdk-core (~> 3, >= 3.201.0) aws-sdk-kms (~> 1) - aws-sigv4 (~> 1.8) + aws-sigv4 (~> 1.5) aws-sigv4 (1.8.0) aws-eventstream (~> 1, >= 1.0.2) babosa (1.0.4) @@ -46,13 +46,13 @@ GEM commander (4.6.0) highline (~> 2.0.0) declarative (0.0.20) - digest-crc (0.6.4) + digest-crc (0.6.5) rake (>= 12.0.0, < 14.0.0) domain_name (0.6.20240107) dotenv (2.8.1) emoji_regex (3.2.3) - excon (0.109.0) - faraday (1.10.2) + excon (0.111.0) + faraday (1.10.3) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) faraday-excon (~> 1.1) @@ -80,7 +80,7 @@ GEM faraday-retry (1.0.3) faraday_middleware (1.2.0) faraday (~> 1.0) - fastimage (2.3.0) + fastimage (2.3.1) fastlane (2.219.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) @@ -123,9 +123,9 @@ GEM xcpretty (~> 0.3.0) xcpretty-travis-formatter (>= 0.0.3) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.34.0) - google-apis-core (>= 0.9.1, < 2.a) - google-apis-core (0.9.5) + google-apis-androidpublisher_v3 (0.54.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-core (0.11.3) addressable (~> 2.5, >= 2.5.1) googleauth (>= 0.16.2, < 2.a) httpclient (>= 2.8.1, < 3.a) @@ -133,65 +133,64 @@ GEM representable (~> 3.0) retriable (>= 2.0, < 4.a) rexml - webrick - google-apis-iamcredentials_v1 (0.16.0) - google-apis-core (>= 0.9.1, < 2.a) - google-apis-playcustomapp_v1 (0.12.0) - google-apis-core (>= 0.9.1, < 2.a) - google-apis-storage_v1 (0.19.0) - google-apis-core (>= 0.9.0, < 2.a) - google-cloud-core (1.6.0) - google-cloud-env (~> 1.0) + google-apis-iamcredentials_v1 (0.17.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-playcustomapp_v1 (0.13.0) + google-apis-core (>= 0.11.0, < 2.a) + google-apis-storage_v1 (0.31.0) + google-apis-core (>= 0.11.0, < 2.a) + google-cloud-core (1.7.0) + google-cloud-env (>= 1.0, < 3.a) google-cloud-errors (~> 1.0) google-cloud-env (1.6.0) faraday (>= 0.17.3, < 3.0) - google-cloud-errors (1.3.0) - google-cloud-storage (1.44.0) + google-cloud-errors (1.4.0) + google-cloud-storage (1.47.0) addressable (~> 2.8) digest-crc (~> 0.4) google-apis-iamcredentials_v1 (~> 0.1) - google-apis-storage_v1 (~> 0.19.0) + google-apis-storage_v1 (~> 0.31.0) google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) - googleauth (1.3.0) + googleauth (1.8.1) faraday (>= 0.17.3, < 3.a) jwt (>= 1.4, < 3.0) - memoist (~> 0.16) multi_json (~> 1.11) os (>= 0.9, < 2.0) signet (>= 0.16, < 2.a) highline (2.0.3) - http-cookie (1.0.5) + http-cookie (1.0.6) domain_name (~> 0.5) httpclient (2.8.3) jmespath (1.6.2) - json (2.7.1) - jwt (2.6.0) - memoist (0.16.2) - mini_magick (4.12.0) - mini_mime (1.1.2) + json (2.7.2) + jwt (2.8.2) + base64 + mini_magick (4.13.2) + mini_mime (1.1.5) multi_json (1.15.0) - multipart-post (2.0.0) + multipart-post (2.4.1) nanaimo (0.3.0) naturally (2.2.1) nkf (0.2.0) - optparse (0.4.0) + optparse (0.5.0) os (1.1.4) - plist (3.6.0) - public_suffix (5.0.1) - rake (13.0.6) + plist (3.7.1) + public_suffix (6.0.0) + rake (13.2.1) representable (3.2.0) declarative (< 0.1.0) trailblazer-option (>= 0.1.1, < 0.2.0) uber (< 0.2.0) retriable (3.1.2) - rexml (3.2.5) + rexml (3.2.9) + strscan rouge (2.0.7) ruby2_keywords (0.0.5) rubyzip (2.3.2) security (0.1.3) - signet (0.17.0) + signet (0.19.0) addressable (~> 2.8) faraday (>= 0.17.5, < 3.a) jwt (>= 1.5, < 3.0) @@ -199,6 +198,7 @@ GEM simctl (1.6.10) CFPropertyList naturally + strscan (3.1.0) terminal-notifier (2.0.0) terminal-table (3.0.2) unicode-display_width (>= 1.1.1, < 3) @@ -209,7 +209,6 @@ GEM tty-cursor (~> 0.7) uber (0.1.0) unicode-display_width (2.5.0) - webrick (1.7.0) word_wrap (1.0.0) xcodeproj (1.24.0) CFPropertyList (>= 2.3.3, < 4.0) @@ -229,8 +228,8 @@ PLATFORMS arm64-darwin-23 DEPENDENCIES - fastlane (>= 2.219.0) + fastlane (= 2.219.0) fastlane-plugin-firebase_test_lab! BUNDLED WITH - 2.4.3 + 2.5.4