refactor: version code handling

This commit is contained in:
Rainer Killinger
2022-02-10 21:10:40 +01:00
parent e78496fb8b
commit 8abd993667
2 changed files with 19 additions and 5 deletions

View File

@@ -17,7 +17,7 @@ require 'json'
default_platform(:android)
version_code = 1
current_version_code = 1
playstore_track = "internal"
package_json = JSON.parse(File.read('../../package.json'))
@@ -28,14 +28,28 @@ platform :android do
end
lane :fetch_version_code do
version_code = google_play_track_version_codes(
current_version_code = google_play_track_version_codes(
package_name: ENV['ANDROID_PACKAGE_NAME'],
track: playstore_track,
json_key: '../../playstore_api_key.json'
).max
end
lane :fetch_highest_version_code do
version_code_candidates = [1]
tracks = ['production', 'beta', 'internal']
tracks.each do |t|
version_code_candidates += google_play_track_version_codes(
package_name: ENV['ANDROID_PACKAGE_NAME'],
track: t,
json_key: '../../playstore_api_key.json'
)
end
current_version_code = version_code_candidates.compact.max
end
lane :build do
fetch_highest_version_code
gradle(
task: "clean assemble",
build_type: "Release",
@@ -45,8 +59,8 @@ platform :android do
"android.injected.signing.store.password" => ENV['ANDROID_KEYSTORE_PASSWORD'],
"android.injected.signing.key.alias" => ENV['ANDROID_KEYSTORE_KEY_ALIAS'],
"android.injected.signing.key.password" => ENV['ANDROID_KEYSTORE_KEY_PASSWORD'],
"versionCode" => version_code,
"versionName" => package_json['version']
"android.injected.version.code" => current_version_code + 1,
"android.injected.version.name" => package_json['version']
}
)
end

View File

@@ -17,7 +17,7 @@ require 'json'
default_platform(:ios)
package_json = JSON.parse(File.read('../../package.json'))
package_json = JSON.parse(File.read('../../../package.json'))
platform :ios do
desc "Push a new release build to the App Store"