From 2767e59f85fba96f03199183158b2cdb17254894 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Wed, 26 Aug 2026 13:52:05 +1000 Subject: [PATCH 1/5] Remove ios_build_preflight action The last remaining callers are WordPress-iOS and WooCommerce iOS, each with an approved PR to drop the call. The action ran `configure_apply`, which will become a no-op or a failure once we move to `a8c-secrets`. --- Generated with the help of Grok, https://x.ai/grok Co-Authored-By: Grok 4.6 --- CHANGELOG.md | 2 +- MIGRATION.md | 5 ++ .../actions/ios/ios_build_preflight.rb | 79 ------------------- 3 files changed, 6 insertions(+), 80 deletions(-) delete mode 100644 lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_build_preflight.rb diff --git a/CHANGELOG.md b/CHANGELOG.md index 7aa211785..4460725a1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ ### Breaking Changes -_None_ +- Remove the `ios_build_preflight` action. ### New Features diff --git a/MIGRATION.md b/MIGRATION.md index 78ec06f49..d86ae31d9 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -1,5 +1,10 @@ # Migration Instructions for Major Releases +## From 14.x to 15.0.0 + +- The `ios_build_preflight` action has been removed. Delete any calls from your Fastfile. + It ran `configure_apply`, wiped DerivedData, checked for ImageMagick and Ghostscript, ran `bundle check`, and invoked `cocoapods`. Call those directly if a lane still needs them. + ## From 13.x to 14.0.0 ### Metadata Source Actions diff --git a/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_build_preflight.rb b/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_build_preflight.rb deleted file mode 100644 index 170402683..000000000 --- a/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_build_preflight.rb +++ /dev/null @@ -1,79 +0,0 @@ -# frozen_string_literal: true - -module Fastlane - module Actions - class IosBuildPreflightAction < Action - def self.run(params) - # Validate mobile configuration secrets - other_action.configure_apply - - Action.sh("cd .. && rm -rf #{params[:derived_data_path]}") - - # Verify that ImageMagick exists on this machine and can be called from the command-line. - # Internal Builds use it to generate the App Icon as part of the build process - begin - Action.sh('which convert') - rescue StandardError - UI.user_error!("Couldn't find ImageMagick. Please install it by running `brew install imagemagick`") - raise - end - - # Verify that Ghostscript exists on this machine and can be called from the command-line. - # Internal Builds use it to generate the App Icon as part of the build process - begin - Action.sh('which gs') - rescue StandardError - UI.user_error!("Couldn't find Ghostscript. Please install it by running `brew install ghostscript`") - raise - end - - # Check gems and pods are up to date. This will exit if it fails - begin - Action.sh('bundle check') - rescue StandardError - UI.user_error!("You should run 'rake dependencies' to make sure gems are up to date") - raise - end - - other_action.cocoapods - end - - ##################################################### - # @!group Documentation - ##################################################### - - def self.description - 'Clean the environment to ensure a safe build' - end - - def self.details - 'Clean the environment to ensure a safe build' - end - - def self.available_options - [ - FastlaneCore::ConfigItem.new( - key: :derived_data_path, - description: "The path to the DerivedData directory for the project. Should match what's used in the `gym` action", - type: String, - default_value: '~/Library/Developer/Xcode/DerivedData' - ), - ] - end - - def self.output - end - - def self.return_value - end - - def self.authors - ['Automattic'] - end - - def self.is_supported?(platform) - %i[ios mac].include?(platform) - end - end - end -end From 83824cbcba1c104417ce21e6ca5d262a507ca729 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Wed, 26 Aug 2026 13:53:28 +1000 Subject: [PATCH 2/5] Cite PR 773 in CHANGELOG entry --- Generated with the help of Grok, https://x.ai/grok Co-Authored-By: Grok 4.6 --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 4460725a1..91d33f094 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ ### Breaking Changes -- Remove the `ios_build_preflight` action. +- Remove the `ios_build_preflight` action. [#773] ### New Features From d0f53608394faf2ecc16448006042671deae57f6 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Wed, 26 Aug 2026 13:55:19 +1000 Subject: [PATCH 3/5] Trim ios_build_preflight changelog wording --- Generated with the help of Grok, https://x.ai/grok Co-Authored-By: Grok 4.6 --- CHANGELOG.md | 2 +- MIGRATION.md | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 91d33f094..a4189954e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ ### Breaking Changes -- Remove the `ios_build_preflight` action. [#773] +- The `ios_build_preflight` action has been removed. [#773] ### New Features diff --git a/MIGRATION.md b/MIGRATION.md index d86ae31d9..d7232f464 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -2,8 +2,7 @@ ## From 14.x to 15.0.0 -- The `ios_build_preflight` action has been removed. Delete any calls from your Fastfile. - It ran `configure_apply`, wiped DerivedData, checked for ImageMagick and Ghostscript, ran `bundle check`, and invoked `cocoapods`. Call those directly if a lane still needs them. +- The `ios_build_preflight` action has been removed. ## From 13.x to 14.0.0 From c0a3e7947d0156ef25fde2e59df4e637120ecc66 Mon Sep 17 00:00:00 2001 From: Gio Lodi Date: Wed, 26 Aug 2026 14:01:38 +1000 Subject: [PATCH 4/5] Remove android_build_preflight action All four client removals have landed. Same breaking change as the ios_build_preflight deletion. --- Generated with the help of Grok, https://x.ai/grok Co-Authored-By: Grok 4.6 --- CHANGELOG.md | 2 +- MIGRATION.md | 2 +- .../android/android_build_preflight.rb | 56 ------------------- 3 files changed, 2 insertions(+), 58 deletions(-) delete mode 100644 lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_preflight.rb diff --git a/CHANGELOG.md b/CHANGELOG.md index a4189954e..26acbe613 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -6,7 +6,7 @@ ### Breaking Changes -- The `ios_build_preflight` action has been removed. [#773] +- The `ios_build_preflight` and `android_build_preflight` actions have been removed. [#773] ### New Features diff --git a/MIGRATION.md b/MIGRATION.md index d7232f464..69d8fd2ee 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -2,7 +2,7 @@ ## From 14.x to 15.0.0 -- The `ios_build_preflight` action has been removed. +- The `ios_build_preflight` and `android_build_preflight` actions have been removed. ## From 13.x to 14.0.0 diff --git a/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_preflight.rb b/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_preflight.rb deleted file mode 100644 index 56db305e2..000000000 --- a/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_preflight.rb +++ /dev/null @@ -1,56 +0,0 @@ -# frozen_string_literal: true - -module Fastlane - module Actions - class AndroidBuildPreflightAction < Action - def self.run(params) - # Validate mobile configuration secrets - other_action.configure_apply - - # Check gems and pods are up to date. This will exit if it fails - begin - Action.sh('bundle check') - rescue StandardError - UI.user_error!("You should run 'bundle install' to make sure gems are up to date") - raise - end - - begin - Action.sh('command -v bundletool > /dev/null') - rescue StandardError - UI.user_error!("bundletool is required to build the APKs. Install it with 'brew install bundletool'") - raise - end - end - - ##################################################### - # @!group Documentation - ##################################################### - - def self.description - 'Clean the environment to ensure a safe build' - end - - def self.details - 'Clean the environment to ensure a safe build' - end - - def self.available_options - end - - def self.output - end - - def self.return_value - end - - def self.authors - ['Automattic'] - end - - def self.is_supported?(platform) - platform == :android - end - end - end -end From 3ba0a51f0b7dfe769050077f0bfc449274029744 Mon Sep 17 00:00:00 2001 From: "Ian G. Maia" Date: Wed, 26 Aug 2026 17:09:41 +0200 Subject: [PATCH 5/5] Update MIGRATION.md --- MIGRATION.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/MIGRATION.md b/MIGRATION.md index 69d8fd2ee..894c88369 100644 --- a/MIGRATION.md +++ b/MIGRATION.md @@ -2,7 +2,7 @@ ## From 14.x to 15.0.0 -- The `ios_build_preflight` and `android_build_preflight` actions have been removed. +- Remove calls to `ios_build_preflight` and `android_build_preflight` actions from your Fastfiles as they've been removed. They also applied legacy `.configure` secrets and ran dependency/tool checks, so you need to preserve any behavior your project still needs explicitly. ## From 13.x to 14.0.0