fastlane-plugin-wpmreleasetoolkit 1.1.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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
|
|