From a4fa7ca2f76f2fb6b85e0badeb9d9a533b6c3b28 Mon Sep 17 00:00:00 2001 From: Kai Bolay Date: Fri, 6 Dec 2024 16:39:26 -0500 Subject: [PATCH 1/4] Make sure `platform` is a symbol (hopefully fixes #376). Explicitly only support iOS and Android. --- .../actions/firebase_app_distribution_action.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb index 69b62fc..13054c7 100644 --- a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb +++ b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb @@ -162,7 +162,8 @@ def self.xcode_archive_path end def self.lane_platform - Actions.lane_context[Actions::SharedValues::PLATFORM_NAME] + # to_sym shouldn't be necessary, but possibly fixes #376 + Actions.lane_context[Actions::SharedValues::PLATFORM_NAME].to_sym end def self.platform_from_app_id(app_id) @@ -193,6 +194,9 @@ def self.get_binary_path(platform, params) Dir["*.apk"].last || Dir[File.join("app", "build", "outputs", "apk", "release", "app-release.apk")].last end + + UI.error "Unable to determine binary path for unsupported platform #{platform}." + nil end def self.get_upload_timeout(params) @@ -586,11 +590,7 @@ def self.available_options end def self.is_supported?(platform) - # Adjust this if your plugin only works for a particular platform (iOS vs. Android, for example) - # See: https://docs.fastlane.tools/advanced/#control-configuration-by-lane-and-by-platform - # - # [:ios, :mac, :android].include?(platform) - true + [:ios, :android].include?(platform) end def self.example_code From 723865a6615868bebe2318af4d99c1b7a1275ee5 Mon Sep 17 00:00:00 2001 From: Kai Bolay Date: Fri, 6 Dec 2024 16:47:49 -0500 Subject: [PATCH 2/4] Handle lane_context[PLATFORM_NAME] == nil --- .../actions/firebase_app_distribution_action.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb index 13054c7..3c0aeec 100644 --- a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb +++ b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb @@ -163,7 +163,7 @@ def self.xcode_archive_path def self.lane_platform # to_sym shouldn't be necessary, but possibly fixes #376 - Actions.lane_context[Actions::SharedValues::PLATFORM_NAME].to_sym + Actions.lane_context[Actions::SharedValues::PLATFORM_NAME]&.to_sym end def self.platform_from_app_id(app_id) From a6bd6d0fa553aefae91605c1a059c6a5d106b228 Mon Sep 17 00:00:00 2001 From: Kai Bolay Date: Fri, 6 Dec 2024 16:53:42 -0500 Subject: [PATCH 3/4] Fix rubocop offenses --- .rubocop.yml | 2 +- .../actions/firebase_app_distribution_action.rb | 4 +--- 2 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index c8020d2..5380e6c 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -121,7 +121,7 @@ Layout/SpaceAroundOperators: Exclude: - "**/spec/actions_specs/xcodebuild_spec.rb" AllCops: - TargetRubyVersion: 2.0 + TargetRubyVersion: 2.3 Include: - "*/lib/assets/*Template" - "*/lib/assets/*TemplateAndroid" diff --git a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb index 3c0aeec..e99ca9c 100644 --- a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb +++ b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb @@ -13,8 +13,6 @@ module Actions module SharedValues FIREBASE_APP_DISTRO_RELEASE ||= :FIREBASE_APP_DISTRO_RELEASE end - - # rubocop:disable Metrics/ClassLength class FirebaseAppDistributionAction < Action extend Auth::FirebaseAppDistributionAuthClient extend Helper::FirebaseAppDistributionHelper @@ -195,7 +193,7 @@ def self.get_binary_path(platform, params) Dir[File.join("app", "build", "outputs", "apk", "release", "app-release.apk")].last end - UI.error "Unable to determine binary path for unsupported platform #{platform}." + UI.error("Unable to determine binary path for unsupported platform #{platform}.") nil end From f0198490de3081accc1f6b9012fec1d4085a275a Mon Sep 17 00:00:00 2001 From: Kai Bolay Date: Fri, 6 Dec 2024 17:03:15 -0500 Subject: [PATCH 4/4] actually fix rubocop offenses --- .../actions/firebase_app_distribution_action.rb | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb index e99ca9c..dcd2196 100644 --- a/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb +++ b/lib/fastlane/plugin/firebase_app_distribution/actions/firebase_app_distribution_action.rb @@ -13,6 +13,8 @@ module Actions module SharedValues FIREBASE_APP_DISTRO_RELEASE ||= :FIREBASE_APP_DISTRO_RELEASE end + + # rubocop:disable Metrics/ClassLength class FirebaseAppDistributionAction < Action extend Auth::FirebaseAppDistributionAuthClient extend Helper::FirebaseAppDistributionHelper