fastlane-plugin-wpmreleasetoolkit 1.1.0 → 1.4.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_betabuild_prechecks.rb +17 -11
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_prechecks.rb +11 -5
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_beta.rb +24 -24
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_final_release.rb +25 -22
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_hotfix.rb +23 -28
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_release.rb +29 -38
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_codefreeze_prechecks.rb +14 -7
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_completecodefreeze_prechecks.rb +8 -2
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_current_branch_is_hotfix.rb +9 -1
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_finalize_prechecks.rb +6 -2
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_alpha_version.rb +7 -1
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_app_version.rb +7 -1
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_release_version.rb +7 -1
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_hotifx_prechecks.rb +4 -4
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_tag_build.rb +9 -3
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/check_translation_progress.rb +147 -0
- data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_bump_version_hotfix.rb +30 -15
- data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_git_helper.rb +14 -5
- data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_version_helper.rb +124 -46
- data/lib/fastlane/plugin/wpmreleasetoolkit/helper/filesystem_helper.rb +3 -1
- data/lib/fastlane/plugin/wpmreleasetoolkit/helper/glotpress_helper.rb +79 -0
- data/lib/fastlane/plugin/wpmreleasetoolkit/version.rb +1 -1
- metadata +18 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '042749ed354718f17fb9634635f8e3c06a8917d5c69ae3850ea7efd32b8b8725'
|
4
|
+
data.tar.gz: 3682297f8d2420dab3ecd457214f9ac9675efe13c5abb80673eb748ff6d71c49
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5b3f91303cf1b3deff289a87f64fe92e99b71d7f78526ae4e4645691a1e8d6b224b94a66c557adca1989bc6f454d530750c7bb264ad5c0a7278d8bd963b50cbd
|
7
|
+
data.tar.gz: 91ecfd2fd9ddc7a8fe18823ab23055f708817c3cf9dcfb93e32739b008c737d195ea09035d6f9315eca96cdcc3d3f563da7697e2d086a59ffb0190e35741f9fc
|
@@ -11,19 +11,21 @@ module Fastlane
|
|
11
11
|
# Checkout develop and update
|
12
12
|
Fastlane::Helper::GitHelper.checkout_and_pull('develop')
|
13
13
|
|
14
|
+
app = params[:app]
|
15
|
+
|
14
16
|
# Check versions
|
15
|
-
release_version = Fastlane::Helper::Android::VersionHelper.get_release_version
|
16
|
-
message = "The following current version has been detected: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n"
|
17
|
-
alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
|
18
|
-
message << "The following Alpha version has been detected: #{alpha_release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n" unless alpha_release_version.nil?
|
17
|
+
release_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
18
|
+
message = "[#{app}] The following current version has been detected: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n"
|
19
|
+
alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app)
|
20
|
+
message << "[#{app}] The following Alpha version has been detected: #{alpha_release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n" unless alpha_release_version.nil?
|
19
21
|
|
20
22
|
# Check branch
|
21
|
-
app_version = Fastlane::Helper::Android::VersionHelper.get_public_version
|
23
|
+
app_version = Fastlane::Helper::Android::VersionHelper.get_public_version(app)
|
22
24
|
UI.user_error!("#{message}Release branch for version #{app_version} doesn't exist. Abort.") unless !params[:base_version].nil? || Fastlane::Helper::GitHelper.checkout_and_pull(release: app_version)
|
23
25
|
|
24
26
|
# Check user overwrite
|
25
27
|
unless params[:base_version].nil?
|
26
|
-
overwrite_version = get_user_build_version(params[:base_version], message)
|
28
|
+
overwrite_version = get_user_build_version(product_name: app, version: params[:base_version], message: message)
|
27
29
|
release_version = overwrite_version[0]
|
28
30
|
alpha_release_version = overwrite_version[1]
|
29
31
|
end
|
@@ -47,11 +49,11 @@ module Fastlane
|
|
47
49
|
[next_beta_version, next_alpha_version]
|
48
50
|
end
|
49
51
|
|
50
|
-
def self.get_user_build_version(version
|
51
|
-
UI.user_error!("Release branch for version #{version} doesn't exist. Abort.") unless Fastlane::Helper::GitHelper.checkout_and_pull(release: version)
|
52
|
-
release_version = Fastlane::Helper::Android::VersionHelper.get_release_version
|
53
|
-
message << "Looking at branch release/#{version} as requested by user. Detected version: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}.\n"
|
54
|
-
alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
|
52
|
+
def self.get_user_build_version(product_name:, version:, message:)
|
53
|
+
UI.user_error!("[#{app}] Release branch for version #{version} doesn't exist. Abort.") unless Fastlane::Helper::GitHelper.checkout_and_pull(release: version)
|
54
|
+
release_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: product_name)
|
55
|
+
message << "#{app}] Looking at branch release/#{version} as requested by user. Detected version: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}.\n"
|
56
|
+
alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(product_name)
|
55
57
|
message << "and Alpha Version: #{alpha_release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n" unless alpha_release_version.nil?
|
56
58
|
[release_version, alpha_release_version]
|
57
59
|
end
|
@@ -80,6 +82,10 @@ module Fastlane
|
|
80
82
|
description: 'Skips confirmation',
|
81
83
|
is_string: false, # true: verifies the input is a string, false: every kind of value
|
82
84
|
default_value: false), # the default value if the user didn't provide one
|
85
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
86
|
+
env_name: 'PROJECT_NAME',
|
87
|
+
description: 'The name of the app to get the release version for',
|
88
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
83
89
|
]
|
84
90
|
end
|
85
91
|
|
@@ -3,20 +3,22 @@ module Fastlane
|
|
3
3
|
class AndroidBuildPrechecksAction < Action
|
4
4
|
def self.run(params)
|
5
5
|
require_relative '../../helper/android/android_version_helper'
|
6
|
+
require_relative '../../helper/git_helper'
|
6
7
|
|
7
8
|
UI.user_error!("Can't build beta and final at the same time!") if params[:final] && params[:beta]
|
8
9
|
|
9
10
|
Fastlane::Helper::GitHelper.ensure_on_branch!('release') unless other_action.is_ci()
|
10
11
|
|
12
|
+
app = params[:app]
|
11
13
|
message = ''
|
12
|
-
beta_version = Fastlane::Helper::Android::VersionHelper.get_release_version() unless !params[:beta] && !params[:final]
|
13
|
-
alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version() if params[:alpha]
|
14
|
+
beta_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app) unless !params[:beta] && !params[:final]
|
15
|
+
alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app) if params[:alpha]
|
14
16
|
|
15
17
|
UI.user_error!("Can't build a final release out of this branch because it's configured as a beta release!") if params[:final] && Fastlane::Helper::Android::VersionHelper.is_beta_version?(beta_version)
|
16
18
|
|
17
|
-
message << "Building version #{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Release Channel)\n" if params[:final]
|
18
|
-
message << "Building version #{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Beta Channel)\n" if params[:beta]
|
19
|
-
message << "Building version #{alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Alpha Channel)\n" if params[:alpha]
|
19
|
+
message << "[#{app}] Building version #{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Release Channel)\n" if params[:final]
|
20
|
+
message << "[#{app}] Building version #{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{beta_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Beta Channel)\n" if params[:beta]
|
21
|
+
message << "[#{app}] Building version #{alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}) (for upload to Alpha Channel)\n" if params[:alpha]
|
20
22
|
|
21
23
|
if params[:skip_confirm]
|
22
24
|
UI.message(message)
|
@@ -62,6 +64,10 @@ module Fastlane
|
|
62
64
|
description: 'True if this is for a final build',
|
63
65
|
is_string: false,
|
64
66
|
default_value: false),
|
67
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
68
|
+
env_name: 'PROJECT_NAME',
|
69
|
+
description: 'The name of the app to get the release version for',
|
70
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
65
71
|
]
|
66
72
|
end
|
67
73
|
|
@@ -8,11 +8,22 @@ module Fastlane
|
|
8
8
|
require_relative '../../helper/android/android_version_helper'
|
9
9
|
|
10
10
|
Fastlane::Helper::GitHelper.ensure_on_branch!('release')
|
11
|
-
|
12
|
-
show_config()
|
11
|
+
app = params[:app]
|
13
12
|
|
14
|
-
|
15
|
-
Fastlane::Helper::Android::VersionHelper.
|
13
|
+
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
14
|
+
current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app)
|
15
|
+
new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_beta_version(current_version, current_version_alpha)
|
16
|
+
new_version_alpha = current_version_alpha.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(new_version_beta, current_version_alpha)
|
17
|
+
|
18
|
+
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
19
|
+
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
20
|
+
UI.message("Current version[#{app}]: #{current_version[vname]}(#{current_version[vcode]})")
|
21
|
+
UI.message("Current alpha version[#{app}]: #{current_version_alpha[vname]}(#{current_version_alpha[vcode]})") unless current_version_alpha.nil?
|
22
|
+
UI.message("New beta version[#{app}]: #{new_version_beta[vname]}(#{new_version_beta[vcode]})")
|
23
|
+
UI.message("New alpha version[#{app}]: #{new_version_alpha[vname]}(#{new_version_alpha[vcode]})") unless current_version_alpha.nil?
|
24
|
+
|
25
|
+
UI.message 'Updating app version...'
|
26
|
+
Fastlane::Helper::Android::VersionHelper.update_versions(app, new_version_beta, new_version_alpha)
|
16
27
|
UI.message 'Done!'
|
17
28
|
|
18
29
|
Fastlane::Helper::Android::GitHelper.commit_version_bump()
|
@@ -23,14 +34,21 @@ module Fastlane
|
|
23
34
|
#####################################################
|
24
35
|
|
25
36
|
def self.description
|
26
|
-
'Bumps the version of the app for a new beta'
|
37
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
27
38
|
end
|
28
39
|
|
29
40
|
def self.details
|
30
|
-
'Bumps the version of the app for a new beta'
|
41
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
31
42
|
end
|
32
43
|
|
33
44
|
def self.available_options
|
45
|
+
# Define all options your action supports.
|
46
|
+
[
|
47
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
48
|
+
env_name: 'PROJECT_NAME',
|
49
|
+
description: 'The name of the app to get the release version for',
|
50
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
51
|
+
]
|
34
52
|
end
|
35
53
|
|
36
54
|
def self.output
|
@@ -46,24 +64,6 @@ module Fastlane
|
|
46
64
|
def self.is_supported?(platform)
|
47
65
|
platform == :android
|
48
66
|
end
|
49
|
-
|
50
|
-
private
|
51
|
-
|
52
|
-
def self.create_config
|
53
|
-
@current_version = Fastlane::Helper::Android::VersionHelper.get_release_version()
|
54
|
-
@current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version()
|
55
|
-
@new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_beta_version(@current_version, @current_version_alpha)
|
56
|
-
@new_version_alpha = ENV['HAS_ALPHA_VERSION'].nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(@new_version_beta, @current_version_alpha)
|
57
|
-
end
|
58
|
-
|
59
|
-
def self.show_config
|
60
|
-
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
61
|
-
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
62
|
-
UI.message("Current version: #{@current_version[vname]}(#{@current_version[vcode]})")
|
63
|
-
UI.message("Current alpha version: #{@current_version_alpha[vname]}(#{@current_version_alpha[vcode]})") unless ENV['HAS_ALPHA_VERSION'].nil?
|
64
|
-
UI.message("New beta version: #{@new_version_beta[vname]}(#{@new_version_beta[vcode]})")
|
65
|
-
UI.message("New alpha version: #{@new_version_alpha[vname]}(#{@new_version_alpha[vcode]})") unless ENV['HAS_ALPHA_VERSION'].nil?
|
66
|
-
end
|
67
67
|
end
|
68
68
|
end
|
69
69
|
end
|
data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_final_release.rb
CHANGED
@@ -8,11 +8,20 @@ module Fastlane
|
|
8
8
|
require_relative '../../helper/android/android_version_helper'
|
9
9
|
|
10
10
|
Fastlane::Helper::GitHelper.ensure_on_branch!('release')
|
11
|
-
|
12
|
-
show_config()
|
11
|
+
app = params[:app]
|
13
12
|
|
14
|
-
|
15
|
-
Fastlane::Helper::Android::VersionHelper.
|
13
|
+
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
14
|
+
current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app)
|
15
|
+
final_version = Fastlane::Helper::Android::VersionHelper.calc_final_release_version(current_version, current_version_alpha)
|
16
|
+
|
17
|
+
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
18
|
+
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
19
|
+
UI.message("Current version[#{app}]: #{current_version[vname]}(#{current_version[vcode]})")
|
20
|
+
UI.message("Current alpha version[#{app}]: #{current_version_alpha[vname]}(#{current_version_alpha[vcode]})") unless current_version_alpha.nil?
|
21
|
+
UI.message("New release version[#{app}]: #{final_version[vname]}(#{final_version[vcode]})")
|
22
|
+
|
23
|
+
UI.message 'Updating app version...'
|
24
|
+
Fastlane::Helper::Android::VersionHelper.update_versions(app, final_version, current_version_alpha)
|
16
25
|
UI.message 'Done!'
|
17
26
|
|
18
27
|
Fastlane::Helper::Android::GitHelper.commit_version_bump()
|
@@ -23,11 +32,21 @@ module Fastlane
|
|
23
32
|
#####################################################
|
24
33
|
|
25
34
|
def self.description
|
26
|
-
'Bumps the version of the app for a new beta'
|
35
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
27
36
|
end
|
28
37
|
|
29
38
|
def self.details
|
30
|
-
'Bumps the version of the app for a new beta'
|
39
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
40
|
+
end
|
41
|
+
|
42
|
+
def self.available_options
|
43
|
+
# Define all options your action supports.
|
44
|
+
[
|
45
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
46
|
+
env_name: 'PROJECT_NAME',
|
47
|
+
description: 'The name of the app to get the release version for',
|
48
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
49
|
+
]
|
31
50
|
end
|
32
51
|
|
33
52
|
def self.authors
|
@@ -37,22 +56,6 @@ module Fastlane
|
|
37
56
|
def self.is_supported?(platform)
|
38
57
|
platform == :android
|
39
58
|
end
|
40
|
-
|
41
|
-
private
|
42
|
-
|
43
|
-
def self.create_config
|
44
|
-
@current_version = Fastlane::Helper::Android::VersionHelper.get_release_version()
|
45
|
-
@current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version()
|
46
|
-
@final_version = Fastlane::Helper::Android::VersionHelper.calc_final_release_version(@current_version, @current_version_alpha)
|
47
|
-
end
|
48
|
-
|
49
|
-
def self.show_config
|
50
|
-
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
51
|
-
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
52
|
-
UI.message("Current version: #{@current_version[vname]}(#{@current_version[vcode]})")
|
53
|
-
UI.message("Current alpha version: #{@current_version_alpha[vname]}(#{@current_version_alpha[vcode]})") unless ENV['HAS_ALPHA_VERSION'].nil?
|
54
|
-
UI.message("New release version: #{@final_version[vname]}(#{@final_version[vcode]})")
|
55
|
-
end
|
56
59
|
end
|
57
60
|
end
|
58
61
|
end
|
@@ -6,11 +6,21 @@ module Fastlane
|
|
6
6
|
|
7
7
|
require_relative '../../helper/android/android_git_helper'
|
8
8
|
Fastlane::Helper::GitHelper.create_branch("release/#{params[:version_name]}", from: params[:previous_version_name])
|
9
|
-
create_config(params[:previous_version_name], params[:version_name], params[:version_code])
|
10
|
-
show_config()
|
11
9
|
|
12
|
-
|
13
|
-
|
10
|
+
app = params[:app]
|
11
|
+
|
12
|
+
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
13
|
+
new_version = Fastlane::Helper::Android::VersionHelper.calc_next_hotfix_version(params[:version_name], params[:version_code]) # NOTE: this just puts the name/code values in a tuple, unchanged (no actual calc/bumping)
|
14
|
+
new_release_branch = "release/#{params[:version_name]}"
|
15
|
+
|
16
|
+
name_key = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
17
|
+
code_key = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
18
|
+
UI.message("Current version [#{app}]: #{current_version[name_key]} (#{current_version[code_key]})")
|
19
|
+
UI.message("New hotfix version[#{app}]: #{new_version[name_key]} (#{new_version[code_key]})")
|
20
|
+
UI.message("Release branch: #{new_release_branch}")
|
21
|
+
|
22
|
+
UI.message 'Updating app version...'
|
23
|
+
Fastlane::Helper::Android::VersionHelper.update_versions(app, new_version, nil)
|
14
24
|
UI.message 'Done!'
|
15
25
|
|
16
26
|
Fastlane::Helper::Android::GitHelper.commit_version_bump()
|
@@ -23,29 +33,30 @@ module Fastlane
|
|
23
33
|
#####################################################
|
24
34
|
|
25
35
|
def self.description
|
26
|
-
'Bumps the version of the app
|
36
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
27
37
|
end
|
28
38
|
|
29
39
|
def self.details
|
30
|
-
'Bumps the version of the app
|
40
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
31
41
|
end
|
32
42
|
|
33
43
|
def self.available_options
|
34
|
-
# Define all options your action supports.
|
35
|
-
|
36
|
-
# Below a few examples
|
37
44
|
[
|
38
45
|
FastlaneCore::ConfigItem.new(key: :version_name,
|
39
46
|
env_name: 'FL_ANDROID_BUMP_VERSION_HOTFIX_VERSION',
|
40
|
-
description: 'The version
|
47
|
+
description: 'The version name for the hotfix',
|
41
48
|
is_string: true),
|
42
49
|
FastlaneCore::ConfigItem.new(key: :version_code,
|
43
50
|
env_name: 'FL_ANDROID_BUMP_VERSION_HOTFIX_CODE',
|
44
|
-
description: 'The version
|
51
|
+
description: 'The version code for the hotfix'),
|
45
52
|
FastlaneCore::ConfigItem.new(key: :previous_version_name,
|
46
53
|
env_name: 'FL_ANDROID_BUMP_VERSION_HOTFIX_PREVIOUS_VERSION',
|
47
54
|
description: 'The version to branch from',
|
48
|
-
is_string: true),
|
55
|
+
is_string: true),
|
56
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
57
|
+
env_name: 'PROJECT_NAME',
|
58
|
+
description: 'The name of the app to get the release version for',
|
59
|
+
is_string: true),
|
49
60
|
]
|
50
61
|
end
|
51
62
|
|
@@ -56,22 +67,6 @@ module Fastlane
|
|
56
67
|
def self.is_supported?(platform)
|
57
68
|
platform == :android
|
58
69
|
end
|
59
|
-
|
60
|
-
private
|
61
|
-
|
62
|
-
def self.create_config(previous_version, new_version_name, new_version_code)
|
63
|
-
@current_version = Fastlane::Helper::Android::VersionHelper.get_release_version()
|
64
|
-
@current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version()
|
65
|
-
@new_version = Fastlane::Helper::Android::VersionHelper.calc_next_hotfix_version(new_version_name, new_version_code)
|
66
|
-
@new_short_version = new_version_name
|
67
|
-
@new_release_branch = "release/#{@new_short_version}"
|
68
|
-
end
|
69
|
-
|
70
|
-
def self.show_config
|
71
|
-
UI.message("Current version: #{@current_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{@current_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]})")
|
72
|
-
UI.message("New hotfix version: #{@new_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}(#{@new_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]})")
|
73
|
-
UI.message("Release branch: #{@new_release_branch}")
|
74
|
-
end
|
75
70
|
end
|
76
71
|
end
|
77
72
|
end
|
@@ -11,17 +11,31 @@ module Fastlane
|
|
11
11
|
other_action.ensure_git_branch(branch: 'develop')
|
12
12
|
|
13
13
|
# Create new configuration
|
14
|
-
|
15
|
-
|
16
|
-
|
14
|
+
app = params[:app]
|
15
|
+
new_short_version = Fastlane::Helper::Android::VersionHelper.bump_version_release(app)
|
16
|
+
|
17
|
+
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
18
|
+
current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app)
|
19
|
+
new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_release_version(current_version, current_version_alpha)
|
20
|
+
new_version_alpha = current_version_alpha.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(new_version_beta, current_version_alpha)
|
21
|
+
new_release_branch = "release/#{new_short_version}"
|
22
|
+
|
23
|
+
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
24
|
+
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
25
|
+
UI.message("Current version[#{app}]: #{current_version[vname]}(#{current_version[vcode]})")
|
26
|
+
UI.message("Current alpha version[#{app}]: #{current_version_alpha[vname]}(#{current_version_alpha[vcode]})") unless current_version_alpha.nil?
|
27
|
+
UI.message("New beta version[#{app}]: #{new_version_beta[vname]}(#{new_version_beta[vcode]})")
|
28
|
+
UI.message("New alpha version[#{app}]: #{new_version_alpha[vname]}(#{new_version_alpha[vcode]})") unless current_version_alpha.nil?
|
29
|
+
UI.message("New version[#{app}]: #{new_short_version}")
|
30
|
+
UI.message("Release branch: #{new_release_branch}")
|
17
31
|
|
18
32
|
# Update local develop and branch
|
19
33
|
UI.message 'Creating new branch...'
|
20
|
-
Fastlane::Helper::GitHelper.create_branch(
|
34
|
+
Fastlane::Helper::GitHelper.create_branch(new_release_branch, from: 'develop')
|
21
35
|
UI.message 'Done!'
|
22
36
|
|
23
|
-
UI.message 'Updating
|
24
|
-
Fastlane::Helper::Android::VersionHelper.update_versions(
|
37
|
+
UI.message 'Updating app version...'
|
38
|
+
Fastlane::Helper::Android::VersionHelper.update_versions(app, new_version_beta, new_version_alpha)
|
25
39
|
Fastlane::Helper::Android::GitHelper.commit_version_bump()
|
26
40
|
UI.message 'Done.'
|
27
41
|
end
|
@@ -31,14 +45,21 @@ module Fastlane
|
|
31
45
|
#####################################################
|
32
46
|
|
33
47
|
def self.description
|
34
|
-
'Bumps the version of the app
|
48
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
35
49
|
end
|
36
50
|
|
37
51
|
def self.details
|
38
|
-
'Bumps the version of the app
|
52
|
+
'Bumps the version of the app for a new beta. Requires the `updateVersionProperties` gradle task to update the keys if you are using a `version.properties` file.'
|
39
53
|
end
|
40
54
|
|
41
55
|
def self.available_options
|
56
|
+
# Define all options your action supports.
|
57
|
+
[
|
58
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
59
|
+
env_name: 'PROJECT_NAME',
|
60
|
+
description: 'The name of the app to get the release version for',
|
61
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
62
|
+
]
|
42
63
|
end
|
43
64
|
|
44
65
|
def self.output
|
@@ -54,36 +75,6 @@ module Fastlane
|
|
54
75
|
def self.is_supported?(platform)
|
55
76
|
platform == :android
|
56
77
|
end
|
57
|
-
|
58
|
-
private
|
59
|
-
|
60
|
-
def self.create_config
|
61
|
-
@current_version = Fastlane::Helper::Android::VersionHelper.get_release_version()
|
62
|
-
@current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version()
|
63
|
-
@new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_release_version(@current_version, @current_version_alpha)
|
64
|
-
@new_version_alpha = ENV['HAS_ALPHA_VERSION'].nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(@new_version_beta, @current_version_alpha)
|
65
|
-
@new_release_branch = "release/#{@new_short_version}"
|
66
|
-
end
|
67
|
-
|
68
|
-
def self.show_config
|
69
|
-
vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
|
70
|
-
vcode = Fastlane::Helper::Android::VersionHelper::VERSION_CODE
|
71
|
-
UI.message("Current version: #{@current_version[vname]}(#{@current_version[vcode]})")
|
72
|
-
UI.message("Current alpha version: #{@current_version_alpha[vname]}(#{@current_version_alpha[vcode]})") unless ENV['HAS_ALPHA_VERSION'].nil?
|
73
|
-
UI.message("New beta version: #{@new_version_beta[vname]}(#{@new_version_beta[vcode]})")
|
74
|
-
UI.message("New alpha version: #{@new_version_alpha[vname]}(#{@new_version_alpha[vcode]})") unless ENV['HAS_ALPHA_VERSION'].nil?
|
75
|
-
UI.message("New version: #{@new_short_version}")
|
76
|
-
UI.message("Release branch: #{@new_release_branch}")
|
77
|
-
end
|
78
|
-
|
79
|
-
def self.update_glotpress_key
|
80
|
-
dm_file = ENV['DOWNLOAD_METADATA']
|
81
|
-
if File.exist?(dm_file)
|
82
|
-
sh("sed -i '' \"s/let glotPressWhatsNewKey.*/let glotPressWhatsNewKey = \\\"v#{@new_short_version}-whats-new\\\"/\" #{dm_file}")
|
83
|
-
else
|
84
|
-
UI.user_error!("Can't find #{dm_file}.")
|
85
|
-
end
|
86
|
-
end
|
87
78
|
end
|
88
79
|
end
|
89
80
|
end
|
@@ -14,18 +14,21 @@ module Fastlane
|
|
14
14
|
# Checkout develop and update
|
15
15
|
Fastlane::Helper::GitHelper.checkout_and_pull('develop')
|
16
16
|
|
17
|
+
app = params[:app]
|
18
|
+
|
17
19
|
# Create versions
|
18
|
-
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
|
19
|
-
current_alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
|
20
|
+
current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(product_name: app)
|
21
|
+
current_alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(app)
|
20
22
|
next_version = Fastlane::Helper::Android::VersionHelper.calc_next_release_version(current_version, current_alpha_version)
|
21
|
-
next_alpha_version =
|
23
|
+
next_alpha_version = current_alpha_version.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(next_version, current_alpha_version)
|
22
24
|
|
25
|
+
no_alpha_version_message = "No alpha version configured. If you wish to configure an alpha version please update version.properties to include an alpha key for this app\n"
|
23
26
|
# Ask user confirmation
|
24
27
|
unless params[:skip_confirm]
|
25
|
-
confirm_message = "Building a new release branch starting from develop.\nCurrent version is #{current_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]} (#{current_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}).\n"
|
26
|
-
confirm_message +=
|
28
|
+
confirm_message = "[#{app}]Building a new release branch starting from develop.\nCurrent version is #{current_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]} (#{current_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}).\n"
|
29
|
+
confirm_message += current_alpha_version.nil? ? no_alpha_version_message : "Current Alpha version is #{current_alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]} (#{current_alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}).\n"
|
27
30
|
confirm_message += "After codefreeze the new version will be: #{next_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]} (#{next_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}).\n"
|
28
|
-
confirm_message +=
|
31
|
+
confirm_message += current_alpha_version.nil? ? '' : "After codefreeze the new Alpha will be: #{next_alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]} (#{next_alpha_version[Fastlane::Helper::Android::VersionHelper::VERSION_CODE]}).\n"
|
29
32
|
confirm_message += 'Do you want to continue?'
|
30
33
|
UI.user_error!('Aborted by user request') unless UI.confirm(confirm_message)
|
31
34
|
end
|
@@ -34,7 +37,7 @@ module Fastlane
|
|
34
37
|
other_action.ensure_git_status_clean()
|
35
38
|
|
36
39
|
# Return the current version
|
37
|
-
Fastlane::Helper::Android::VersionHelper.get_public_version
|
40
|
+
Fastlane::Helper::Android::VersionHelper.get_public_version(app)
|
38
41
|
end
|
39
42
|
|
40
43
|
#####################################################
|
@@ -57,6 +60,10 @@ module Fastlane
|
|
57
60
|
description: 'Skips confirmation before codefreeze',
|
58
61
|
is_string: false, # true: verifies the input is a string, false: every kind of value
|
59
62
|
default_value: false), # the default value if the user didn't provide one
|
63
|
+
FastlaneCore::ConfigItem.new(key: :app,
|
64
|
+
env_name: 'PROJECT_NAME',
|
65
|
+
description: 'The name of the app to get the release version for',
|
66
|
+
is_string: true), # true: verifies the input is a string, false: every kind of value
|
60
67
|
]
|
61
68
|
end
|
62
69
|
|