Class: Fastlane::Helper::GetNewBuildNumberHelper
- Inherits:
-
Object
- Object
- Fastlane::Helper::GetNewBuildNumberHelper
- Defined in:
- lib/fastlane/plugin/get_new_build_number/helper/get_new_build_number_helper.rb
Class Method Summary collapse
-
.get_google_play_build_number(track:, package_name:, json_key:) ⇒ Object
Returns the latest build number (“version code”, in Android terminology) for the given Google Play track.
- .get_latest_build_number(bundle_identifier: nil, package_name: nil, google_play_json_key_path: nil, app_store_initial_build_number: nil, firebase_json_key_path: nil, firebase_app_ios: nil, firebase_app_android: nil) ⇒ Object
Class Method Details
.get_google_play_build_number(track:, package_name:, json_key:) ⇒ Object
Returns the latest build number (“version code”, in Android terminology) for the given Google Play track.
117 118 119 120 121 122 123 124 125 126 127 128 |
# File 'lib/fastlane/plugin/get_new_build_number/helper/get_new_build_number_helper.rb', line 117 def self.get_google_play_build_number(track:, package_name:, json_key:) codes = Fastlane::Actions::GooglePlayTrackVersionCodesAction.run( track: track, package_name: package_name, json_key: json_key ) return codes.max rescue StandardError UI.("No build numbers found for track #{track} (Google Play Store)") return 0 end |
.get_latest_build_number(bundle_identifier: nil, package_name: nil, google_play_json_key_path: nil, app_store_initial_build_number: nil, firebase_json_key_path: nil, firebase_app_ios: nil, firebase_app_android: nil) ⇒ Object
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 |
# File 'lib/fastlane/plugin/get_new_build_number/helper/get_new_build_number_helper.rb', line 8 def self.get_latest_build_number( bundle_identifier: nil, package_name: nil, google_play_json_key_path: nil, app_store_initial_build_number: nil, firebase_json_key_path: nil, firebase_app_ios: nil, firebase_app_android: nil ) if bundle_identifier.nil? && package_name.nil? UI.error("Both bundle_identifier and package_name are nil") return nil end if package_name.nil? && google_play_json_key_path.nil? UI.error("Both package_name and google_play_json_key_path are nil") return nil end app_store_build_number = 0 unless bundle_identifier.nil? app_store_build_number = Fastlane::Actions::AppStoreBuildNumberAction.run( app_identifier: bundle_identifier, platform: "IOS", initial_build_number: app_store_initial_build_number || 1 ) UI.("Latest build number (App Store): #{app_store_build_number}") end google_play_build_number_prod = get_google_play_build_number( track: "production", package_name: package_name, json_key: google_play_json_key_path ) google_play_build_number_beta = get_google_play_build_number( track: "beta", package_name: package_name, json_key: google_play_json_key_path ) google_play_build_number_alpha = get_google_play_build_number( track: "alpha", package_name: package_name, json_key: google_play_json_key_path ) google_play_build_number_internal = get_google_play_build_number( track: "internal", package_name: package_name, json_key: google_play_json_key_path ) google_play_build_number = [ google_play_build_number_prod, google_play_build_number_beta, google_play_build_number_alpha, google_play_build_number_internal ].max UI.("Latest build number (Google Play Store): #{google_play_build_number}") fad_build_number_ios = 0 begin unless firebase_app_ios.nil? response = Fastlane::Actions::FirebaseAppDistributionGetLatestReleaseAction.run( app: firebase_app_ios, service_credentials_file: firebase_json_key_path ) unless response.nil? fad_build_number_ios = response[:buildVersion].to_i end UI.("Latest build (Firebase App Distribution iOS): #{fad_build_number_ios}") end rescue StandardError => e UI.error("Error getting latest build number (Firebase App Distribution iOS): #{e.}") end fad_build_number_android = 0 begin unless firebase_app_android.nil? response = Fastlane::Actions::FirebaseAppDistributionGetLatestReleaseAction.run( app: firebase_app_android, service_credentials_file: firebase_json_key_path ) unless response.nil? fad_build_number_android = response[:buildVersion].to_i end UI.("Latest build (Firebase App Distribution Android): #{fad_build_number_android}") end rescue StandardError => e UI.error("Error getting latest build number (Firebase App Distribution Android): #{e.}") end return [ app_store_build_number, google_play_build_number, fad_build_number_ios, fad_build_number_android ].max end |