fastlane-plugin-wpmreleasetoolkit 9.0.1 → 9.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_betabuild_prechecks.rb +41 -5
  3. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_build_prechecks.rb +37 -6
  4. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_beta.rb +40 -5
  5. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_final_release.rb +40 -5
  6. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_hotfix.rb +35 -3
  7. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_bump_version_release.rb +42 -5
  8. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_codefreeze_prechecks.rb +33 -3
  9. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_completecodefreeze_prechecks.rb +25 -1
  10. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_current_branch_is_hotfix.rb +28 -2
  11. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_download_file_by_version.rb +13 -1
  12. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_download_translations_action.rb +3 -1
  13. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_finalize_prechecks.rb +25 -1
  14. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_alpha_version.rb +28 -2
  15. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_app_version.rb +28 -2
  16. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_get_release_version.rb +28 -2
  17. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_tag_build.rb +29 -2
  18. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/android/android_update_release_notes.rb +2 -0
  19. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/copy_branch_protection_action.rb +80 -0
  20. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/{removebranchprotection_action.rb → remove_branch_protection_action.rb} +24 -17
  21. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/set_branch_protection_action.rb +153 -0
  22. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/ios/ios_update_release_notes.rb +2 -0
  23. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_git_helper.rb +8 -9
  24. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/android/android_version_helper.rb +31 -47
  25. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/deprecated.rb +46 -0
  26. data/lib/fastlane/plugin/wpmreleasetoolkit/helper/github_helper.rb +49 -4
  27. data/lib/fastlane/plugin/wpmreleasetoolkit/models/app_version.rb +36 -0
  28. data/lib/fastlane/plugin/wpmreleasetoolkit/models/build_code.rb +27 -0
  29. data/lib/fastlane/plugin/wpmreleasetoolkit/version.rb +1 -1
  30. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/abstract_version_calculator.rb +85 -0
  31. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/date_build_code_calculator.rb +32 -0
  32. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/date_version_calculator.rb +37 -0
  33. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/marketing_version_calculator.rb +26 -0
  34. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/semantic_version_calculator.rb +21 -0
  35. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/calculators/simple_build_code_calculator.rb +22 -0
  36. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/files/android_version_file.rb +76 -0
  37. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/files/ios_version_file.rb +64 -0
  38. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/abstract_version_formatter.rb +27 -0
  39. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/derived_build_code_formatter.rb +33 -0
  40. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/four_part_build_code_formatter.rb +22 -0
  41. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/four_part_version_formatter.rb +35 -0
  42. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/rc_notation_version_formatter.rb +65 -0
  43. data/lib/fastlane/plugin/wpmreleasetoolkit/versioning/formatters/simple_build_code_formatter.rb +20 -0
  44. data/lib/fastlane/plugin/wpmreleasetoolkit.rb +1 -1
  45. metadata +36 -4
  46. data/lib/fastlane/plugin/wpmreleasetoolkit/actions/common/setbranchprotection_action.rb +0 -63
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 982e123d25f4bc8ee55dfc605e8e6873c0365d4d75f4eabce7884a4de01649e4
4
- data.tar.gz: 462ba969f7790d6aabf6201e5bae1e4df4ac0512c8ef42955247a3319e891827
3
+ metadata.gz: '08941e54d2253b1ac4dbcb350d0e5e1a31da6dc52897e2c392608f1554ad8308'
4
+ data.tar.gz: 7d98b95785ac0c1d7fca4b73474d234797753f6d04c84e848b9cc7eba332a5e5
5
5
  SHA512:
6
- metadata.gz: 10433f33f1af9890023113464a26c5ff5ed29df4388f11248d6afb5cd85bc83622d4511c4f8e4279cde75fbcaa0605f6487aee6267042fcdd897c3a0036404f6
7
- data.tar.gz: ce0e3fc971589f2f5a750c23e2acf78ae4bba2637d133717d361ee3bc5778e6f37b5d3f1f2455c9a9024454e7f443d3ce27b5c034eea41de61aed72e422532ab
6
+ metadata.gz: 2deb2008e93e31b32f43cf418f49d9c92365d726c565fea9843e68fb8aeef809ad4311abf4419ea00bc96e60f269e30a8bd412a68ec0f8064680c0a88149da80
7
+ data.tar.gz: 2cbef8e0edc3f6e69d6bc02f812ebdc1f3cecd2d740d93a8f4ad930440a84d7b9bd1b449414b18e761a7e9a700f5c42b0083fb55f2ec6f902025c87851cb77fc
@@ -8,18 +8,32 @@ module Fastlane
8
8
  require_relative '../../helper/android/android_version_helper'
9
9
  require_relative '../../helper/android/android_git_helper'
10
10
 
11
+ project_root_folder = params[:project_root_folder]
12
+ project_name = params[:project_name]
13
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
14
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
15
+
11
16
  # Checkout default branch and update
12
17
  default_branch = params[:default_branch]
13
18
  Fastlane::Helper::GitHelper.checkout_and_pull(default_branch)
14
19
 
15
20
  # Check versions
16
- release_version = Fastlane::Helper::Android::VersionHelper.get_release_version
21
+ release_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
22
+ build_gradle_path: build_gradle_path,
23
+ version_properties_path: version_properties_path
24
+ )
17
25
  message = "The following current version has been detected: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n"
18
- alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
26
+ alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
27
+ build_gradle_path: build_gradle_path,
28
+ version_properties_path: version_properties_path
29
+ )
19
30
  message << "The following Alpha version has been detected: #{alpha_release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n" unless alpha_release_version.nil?
20
31
 
21
32
  # Check branch
22
- app_version = Fastlane::Helper::Android::VersionHelper.get_public_version
33
+ app_version = Fastlane::Helper::Android::VersionHelper.get_public_version(
34
+ build_gradle_path: build_gradle_path,
35
+ version_properties_path: version_properties_path
36
+ )
23
37
  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)
24
38
 
25
39
  # Check user overwrite
@@ -50,9 +64,15 @@ module Fastlane
50
64
 
51
65
  def self.get_user_build_version(version:, message:)
52
66
  UI.user_error!("Release branch for version #{version} doesn't exist. Abort.") unless Fastlane::Helper::GitHelper.checkout_and_pull(release: version)
53
- release_version = Fastlane::Helper::Android::VersionHelper.get_release_version
67
+ release_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
68
+ build_gradle_path: build_gradle_path,
69
+ version_properties_path: version_properties_path
70
+ )
54
71
  message << "Looking at branch release/#{version} as requested by user. Detected version: #{release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}.\n"
55
- alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
72
+ alpha_release_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
73
+ build_gradle_path: build_gradle_path,
74
+ version_properties_path: version_properties_path
75
+ )
56
76
  message << "and Alpha Version: #{alpha_release_version[Fastlane::Helper::Android::VersionHelper::VERSION_NAME]}\n" unless alpha_release_version.nil?
57
77
  [release_version, alpha_release_version]
58
78
  end
@@ -86,6 +106,22 @@ module Fastlane
86
106
  description: 'Default branch of the repository',
87
107
  type: String,
88
108
  default_value: Fastlane::Helper::GitHelper::DEFAULT_GIT_BRANCH),
109
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
110
+ description: 'Path to the build.gradle file',
111
+ type: String,
112
+ optional: true,
113
+ conflicting_options: %i[project_name
114
+ project_root_folder
115
+ version_properties_path]),
116
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
117
+ description: 'Path to the version.properties file',
118
+ type: String,
119
+ optional: true,
120
+ conflicting_options: %i[build_gradle_path
121
+ project_name
122
+ project_root_folder]),
123
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
124
+ Fastlane::Helper::Deprecated.project_name_config_item,
89
125
  ]
90
126
  end
91
127
 
@@ -9,9 +9,24 @@ module Fastlane
9
9
 
10
10
  Fastlane::Helper::GitHelper.ensure_on_branch!('release') unless other_action.is_ci
11
11
 
12
+ project_root_folder = params[:project_root_folder]
13
+ project_name = params[:project_name]
14
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
15
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
16
+
12
17
  message = ''
13
- beta_version = Fastlane::Helper::Android::VersionHelper.get_release_version unless !params[:beta] && !params[:final]
14
- alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version if params[:alpha]
18
+ unless !params[:beta] && !params[:final]
19
+ beta_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
20
+ build_gradle_path: build_gradle_path,
21
+ version_properties_path: version_properties_path
22
+ )
23
+ end
24
+ if params[:alpha]
25
+ alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
26
+ build_gradle_path: build_gradle_path,
27
+ version_properties_path: version_properties_path
28
+ )
29
+ end
15
30
 
16
31
  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)
17
32
 
@@ -19,10 +34,10 @@ module Fastlane
19
34
  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]
20
35
  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]
21
36
 
22
- if params[:skip_confirm]
23
- UI.message(message)
24
- else
25
- UI.user_error!('Aborted by user request') unless UI.confirm("#{message}Do you want to continue?")
37
+ UI.important(message)
38
+
39
+ if !options[:skip_confirm] && !UI.confirm('Do you want to continue?')
40
+ UI.user_error!('Aborted by user request')
26
41
  end
27
42
 
28
43
  # Check local repo status
@@ -63,6 +78,22 @@ module Fastlane
63
78
  description: 'True if this is for a final build',
64
79
  type: Boolean,
65
80
  default_value: false),
81
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
82
+ description: 'Path to the build.gradle file',
83
+ type: String,
84
+ optional: true,
85
+ conflicting_options: %i[project_name
86
+ project_root_folder
87
+ version_properties_path]),
88
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
89
+ description: 'Path to the version.properties file',
90
+ type: String,
91
+ optional: true,
92
+ conflicting_options: %i[build_gradle_path
93
+ project_name
94
+ project_root_folder]),
95
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
96
+ Fastlane::Helper::Deprecated.project_name_config_item,
66
97
  ]
67
98
  end
68
99
 
@@ -9,8 +9,19 @@ module Fastlane
9
9
 
10
10
  Fastlane::Helper::GitHelper.ensure_on_branch!('release')
11
11
 
12
- current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
13
- current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version
12
+ project_root_folder = params[:project_root_folder]
13
+ project_name = params[:project_name]
14
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
15
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
16
+
17
+ current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
18
+ build_gradle_path: build_gradle_path,
19
+ version_properties_path: version_properties_path
20
+ )
21
+ current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
22
+ build_gradle_path: build_gradle_path,
23
+ version_properties_path: version_properties_path
24
+ )
14
25
  new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_beta_version(current_version, current_version_alpha)
15
26
  new_version_alpha = current_version_alpha.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(new_version_beta, current_version_alpha)
16
27
 
@@ -22,10 +33,17 @@ module Fastlane
22
33
  UI.message("New alpha version: #{new_version_alpha[vname]}(#{new_version_alpha[vcode]})") unless current_version_alpha.nil?
23
34
 
24
35
  UI.message 'Updating app version...'
25
- Fastlane::Helper::Android::VersionHelper.update_versions(new_version_beta, new_version_alpha)
36
+ Fastlane::Helper::Android::VersionHelper.update_versions(
37
+ new_version_beta,
38
+ new_version_alpha,
39
+ version_properties_path: version_properties_path
40
+ )
26
41
  UI.message 'Done!'
27
42
 
28
- Fastlane::Helper::Android::GitHelper.commit_version_bump
43
+ Fastlane::Helper::Android::GitHelper.commit_version_bump(
44
+ build_gradle_path: build_gradle_path,
45
+ version_properties_path: version_properties_path
46
+ )
29
47
  end
30
48
 
31
49
  #####################################################
@@ -41,7 +59,24 @@ module Fastlane
41
59
  end
42
60
 
43
61
  def self.available_options
44
- # Define all options your action supports.
62
+ [
63
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
64
+ description: 'Path to the build.gradle file',
65
+ type: String,
66
+ optional: true,
67
+ conflicting_options: %i[project_name
68
+ project_root_folder
69
+ version_properties_path]),
70
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
71
+ description: 'Path to the version.properties file',
72
+ type: String,
73
+ optional: true,
74
+ conflicting_options: %i[build_gradle_path
75
+ project_name
76
+ project_root_folder]),
77
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
78
+ Fastlane::Helper::Deprecated.project_name_config_item,
79
+ ]
45
80
  end
46
81
 
47
82
  def self.output
@@ -9,8 +9,19 @@ module Fastlane
9
9
 
10
10
  Fastlane::Helper::GitHelper.ensure_on_branch!('release')
11
11
 
12
- current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
13
- current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version
12
+ project_root_folder = params[:project_root_folder]
13
+ project_name = params[:project_name]
14
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
15
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
16
+
17
+ current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
18
+ build_gradle_path: build_gradle_path,
19
+ version_properties_path: version_properties_path
20
+ )
21
+ current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
22
+ build_gradle_path: build_gradle_path,
23
+ version_properties_path: version_properties_path
24
+ )
14
25
  final_version = Fastlane::Helper::Android::VersionHelper.calc_final_release_version(current_version, current_version_alpha)
15
26
 
16
27
  vname = Fastlane::Helper::Android::VersionHelper::VERSION_NAME
@@ -20,10 +31,17 @@ module Fastlane
20
31
  UI.message("New release version: #{final_version[vname]}(#{final_version[vcode]})")
21
32
 
22
33
  UI.message 'Updating app version...'
23
- Fastlane::Helper::Android::VersionHelper.update_versions(final_version, current_version_alpha)
34
+ Fastlane::Helper::Android::VersionHelper.update_versions(
35
+ final_version,
36
+ current_version_alpha,
37
+ version_properties_path: version_properties_path
38
+ )
24
39
  UI.message 'Done!'
25
40
 
26
- Fastlane::Helper::Android::GitHelper.commit_version_bump
41
+ Fastlane::Helper::Android::GitHelper.commit_version_bump(
42
+ build_gradle_path: build_gradle_path,
43
+ version_properties_path: version_properties_path
44
+ )
27
45
  end
28
46
 
29
47
  #####################################################
@@ -39,7 +57,24 @@ module Fastlane
39
57
  end
40
58
 
41
59
  def self.available_options
42
- # Define all options your action supports.
60
+ [
61
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
62
+ description: 'Path to the build.gradle file',
63
+ type: String,
64
+ optional: true,
65
+ conflicting_options: %i[project_name
66
+ project_root_folder
67
+ version_properties_path]),
68
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
69
+ description: 'Path to the version.properties file',
70
+ type: String,
71
+ optional: true,
72
+ conflicting_options: %i[build_gradle_path
73
+ project_name
74
+ project_root_folder]),
75
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
76
+ Fastlane::Helper::Deprecated.project_name_config_item,
77
+ ]
43
78
  end
44
79
 
45
80
  def self.authors
@@ -5,9 +5,18 @@ module Fastlane
5
5
  UI.message 'Bumping app release version for hotfix...'
6
6
 
7
7
  require_relative '../../helper/android/android_git_helper'
8
+
9
+ project_root_folder = params[:project_root_folder]
10
+ project_name = params[:project_name]
11
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
12
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
13
+
8
14
  Fastlane::Helper::GitHelper.create_branch("release/#{params[:version_name]}", from: params[:previous_version_name])
9
15
 
10
- current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
16
+ current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
17
+ build_gradle_path: build_gradle_path,
18
+ version_properties_path: version_properties_path
19
+ )
11
20
  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)
12
21
  new_release_branch = "release/#{params[:version_name]}"
13
22
 
@@ -18,10 +27,17 @@ module Fastlane
18
27
  UI.message("Release branch: #{new_release_branch}")
19
28
 
20
29
  UI.message 'Updating app version...'
21
- Fastlane::Helper::Android::VersionHelper.update_versions(new_version, nil)
30
+ Fastlane::Helper::Android::VersionHelper.update_versions(
31
+ new_version,
32
+ nil,
33
+ version_properties_path: version_properties_path
34
+ )
22
35
  UI.message 'Done!'
23
36
 
24
- Fastlane::Helper::Android::GitHelper.commit_version_bump
37
+ Fastlane::Helper::Android::GitHelper.commit_version_bump(
38
+ build_gradle_path: build_gradle_path,
39
+ version_properties_path: version_properties_path
40
+ )
25
41
 
26
42
  UI.message 'Done.'
27
43
  end
@@ -52,6 +68,22 @@ module Fastlane
52
68
  env_name: 'FL_ANDROID_BUMP_VERSION_HOTFIX_PREVIOUS_VERSION',
53
69
  description: 'The version to branch from',
54
70
  type: String),
71
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
72
+ description: 'Path to the build.gradle file',
73
+ type: String,
74
+ optional: true,
75
+ conflicting_options: %i[project_name
76
+ project_root_folder
77
+ version_properties_path]),
78
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
79
+ description: 'Path to the version.properties file',
80
+ type: String,
81
+ optional: true,
82
+ conflicting_options: %i[build_gradle_path
83
+ project_name
84
+ project_root_folder]),
85
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
86
+ Fastlane::Helper::Deprecated.project_name_config_item,
55
87
  ]
56
88
  end
57
89
 
@@ -8,14 +8,28 @@ module Fastlane
8
8
  require_relative '../../helper/android/android_version_helper'
9
9
  require_relative '../../helper/android/android_git_helper'
10
10
 
11
+ project_root_folder = params[:project_root_folder]
12
+ project_name = params[:project_name]
13
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
14
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
15
+
11
16
  default_branch = params[:default_branch]
12
17
  other_action.ensure_git_branch(branch: default_branch)
13
18
 
14
19
  # Create new configuration
15
- new_short_version = Fastlane::Helper::Android::VersionHelper.bump_version_release
20
+ new_short_version = Fastlane::Helper::Android::VersionHelper.bump_version_release(
21
+ build_gradle_path: build_gradle_path,
22
+ version_properties_path: version_properties_path
23
+ )
16
24
 
17
- current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
18
- current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version
25
+ current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
26
+ build_gradle_path: build_gradle_path,
27
+ version_properties_path: version_properties_path
28
+ )
29
+ current_version_alpha = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
30
+ build_gradle_path: build_gradle_path,
31
+ version_properties_path: version_properties_path
32
+ )
19
33
  new_version_beta = Fastlane::Helper::Android::VersionHelper.calc_next_release_version(current_version, current_version_alpha)
20
34
  new_version_alpha = current_version_alpha.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(new_version_beta, current_version_alpha)
21
35
  new_release_branch = "release/#{new_short_version}"
@@ -35,8 +49,15 @@ module Fastlane
35
49
  UI.message 'Done!'
36
50
 
37
51
  UI.message 'Updating app version...'
38
- Fastlane::Helper::Android::VersionHelper.update_versions(new_version_beta, new_version_alpha)
39
- Fastlane::Helper::Android::GitHelper.commit_version_bump
52
+ Fastlane::Helper::Android::VersionHelper.update_versions(
53
+ new_version_beta,
54
+ new_version_alpha,
55
+ version_properties_path: version_properties_path
56
+ )
57
+ Fastlane::Helper::Android::GitHelper.commit_version_bump(
58
+ build_gradle_path: build_gradle_path,
59
+ version_properties_path: version_properties_path
60
+ )
40
61
  UI.message 'Done.'
41
62
  end
42
63
 
@@ -59,6 +80,22 @@ module Fastlane
59
80
  description: 'Default branch of the repository',
60
81
  type: String,
61
82
  default_value: Fastlane::Helper::GitHelper::DEFAULT_GIT_BRANCH),
83
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
84
+ description: 'Path to the build.gradle file',
85
+ type: String,
86
+ optional: true,
87
+ conflicting_options: %i[project_name
88
+ project_root_folder
89
+ version_properties_path]),
90
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
91
+ description: 'Path to the version.properties file',
92
+ type: String,
93
+ optional: true,
94
+ conflicting_options: %i[build_gradle_path
95
+ project_name
96
+ project_root_folder]),
97
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
98
+ Fastlane::Helper::Deprecated.project_name_config_item,
62
99
  ]
63
100
  end
64
101
 
@@ -11,13 +11,24 @@ module Fastlane
11
11
  require_relative '../../helper/android/android_version_helper'
12
12
  require_relative '../../helper/android/android_git_helper'
13
13
 
14
+ project_root_folder = params[:project_root_folder]
15
+ project_name = params[:project_name]
16
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
17
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
18
+
14
19
  # Checkout default branch and update
15
20
  default_branch = params[:default_branch]
16
21
  Fastlane::Helper::GitHelper.checkout_and_pull(default_branch)
17
22
 
18
23
  # Create versions
19
- current_version = Fastlane::Helper::Android::VersionHelper.get_release_version
20
- current_alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version
24
+ current_version = Fastlane::Helper::Android::VersionHelper.get_release_version(
25
+ build_gradle_path: build_gradle_path,
26
+ version_properties_path: version_properties_path
27
+ )
28
+ current_alpha_version = Fastlane::Helper::Android::VersionHelper.get_alpha_version(
29
+ build_gradle_path: build_gradle_path,
30
+ version_properties_path: version_properties_path
31
+ )
21
32
  next_version = Fastlane::Helper::Android::VersionHelper.calc_next_release_version(current_version, current_alpha_version)
22
33
  next_alpha_version = current_alpha_version.nil? ? nil : Fastlane::Helper::Android::VersionHelper.calc_next_alpha_version(next_version, current_alpha_version)
23
34
 
@@ -36,7 +47,10 @@ module Fastlane
36
47
  other_action.ensure_git_status_clean
37
48
 
38
49
  # Return the current version
39
- Fastlane::Helper::Android::VersionHelper.get_public_version
50
+ Fastlane::Helper::Android::VersionHelper.get_public_version(
51
+ build_gradle_path: build_gradle_path,
52
+ version_properties_path: version_properties_path
53
+ )
40
54
  end
41
55
 
42
56
  #####################################################
@@ -64,6 +78,22 @@ module Fastlane
64
78
  description: 'Default branch of the repository',
65
79
  type: String,
66
80
  default_value: Fastlane::Helper::GitHelper::DEFAULT_GIT_BRANCH),
81
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
82
+ description: 'Path to the build.gradle file',
83
+ type: String,
84
+ optional: true,
85
+ conflicting_options: %i[project_name
86
+ project_root_folder
87
+ version_properties_path]),
88
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
89
+ description: 'Path to the version.properties file',
90
+ type: String,
91
+ optional: true,
92
+ conflicting_options: %i[build_gradle_path
93
+ project_name
94
+ project_root_folder]),
95
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
96
+ Fastlane::Helper::Deprecated.project_name_config_item,
67
97
  ]
68
98
  end
69
99
 
@@ -11,7 +11,15 @@ module Fastlane
11
11
  current_branch = Fastlane::Helper::GitHelper.current_git_branch
12
12
  UI.user_error!("Current branch - '#{current_branch}' - is not a release branch. Abort.") unless current_branch.start_with?('release/')
13
13
 
14
- version = Fastlane::Helper::Android::VersionHelper.get_public_version
14
+ project_root_folder = params[:project_root_folder]
15
+ project_name = params[:project_name]
16
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
17
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
18
+
19
+ version = Fastlane::Helper::Android::VersionHelper.get_public_version(
20
+ build_gradle_path: build_gradle_path,
21
+ version_properties_path: version_properties_path
22
+ )
15
23
  message = "Completing code freeze for: #{version}\n"
16
24
  if params[:skip_confirm]
17
25
  UI.message(message)
@@ -44,6 +52,22 @@ module Fastlane
44
52
  description: 'Skips confirmation',
45
53
  type: Boolean,
46
54
  default_value: false), # the default value if the user didn't provide one
55
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
56
+ description: 'Path to the build.gradle file',
57
+ type: String,
58
+ optional: true,
59
+ conflicting_options: %i[project_name
60
+ project_root_folder
61
+ version_properties_path]),
62
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
63
+ description: 'Path to the version.properties file',
64
+ type: String,
65
+ optional: true,
66
+ conflicting_options: %i[build_gradle_path
67
+ project_name
68
+ project_root_folder]),
69
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
70
+ Fastlane::Helper::Deprecated.project_name_config_item,
47
71
  ]
48
72
  end
49
73
 
@@ -7,7 +7,16 @@ module Fastlane
7
7
  class AndroidCurrentBranchIsHotfixAction < Action
8
8
  def self.run(params)
9
9
  require_relative '../../helper/android/android_version_helper'
10
- version = Fastlane::Helper::Android::VersionHelper.get_release_version
10
+
11
+ project_root_folder = params[:project_root_folder]
12
+ project_name = params[:project_name]
13
+ build_gradle_path = params[:build_gradle_path] || (File.join(project_root_folder || '.', project_name, 'build.gradle') unless project_name.nil?)
14
+ version_properties_path = params[:version_properties_path] || File.join(project_root_folder || '.', 'version.properties')
15
+
16
+ version = Fastlane::Helper::Android::VersionHelper.get_release_version(
17
+ build_gradle_path: build_gradle_path,
18
+ version_properties_path: version_properties_path
19
+ )
11
20
  Fastlane::Helper::Android::VersionHelper.is_hotfix?(version)
12
21
  end
13
22
 
@@ -24,7 +33,24 @@ module Fastlane
24
33
  end
25
34
 
26
35
  def self.available_options
27
- # Define all options your action supports.
36
+ [
37
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
38
+ description: 'Path to the build.gradle file',
39
+ type: String,
40
+ optional: true,
41
+ conflicting_options: %i[project_name
42
+ project_root_folder
43
+ version_properties_path]),
44
+ FastlaneCore::ConfigItem.new(key: :version_properties_path,
45
+ description: 'Path to the version.properties file',
46
+ type: String,
47
+ optional: true,
48
+ conflicting_options: %i[build_gradle_path
49
+ project_name
50
+ project_root_folder]),
51
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
52
+ Fastlane::Helper::Deprecated.project_name_config_item,
53
+ ]
28
54
  end
29
55
 
30
56
  def self.output
@@ -5,7 +5,13 @@ module Fastlane
5
5
  require_relative '../../helper/android/android_localize_helper'
6
6
  require_relative '../../helper/github_helper'
7
7
 
8
- version = Fastlane::Helper::Android::VersionHelper.get_library_version_from_gradle_config(import_key: params[:import_key])
8
+ project_root_folder = params[:project_root_folder]
9
+ build_gradle_path = params[:build_gradle_path] || File.join(project_root_folder || '.', 'build.gradle')
10
+
11
+ version = Fastlane::Helper::Android::VersionHelper.get_library_version_from_gradle_config(
12
+ build_gradle_path: build_gradle_path,
13
+ import_key: params[:import_key]
14
+ )
9
15
  UI.user_error!("Can't find any reference for key #{params[:import_key]}") if version.nil?
10
16
  UI.message "Downloading #{params[:file_path]} from #{params[:repository]} at version #{version} to #{params[:download_folder]}"
11
17
 
@@ -58,7 +64,13 @@ module Fastlane
58
64
  description: 'The prefix which is used in the GitHub release title',
59
65
  type: String,
60
66
  optional: true),
67
+ FastlaneCore::ConfigItem.new(key: :build_gradle_path,
68
+ description: 'Path to the build.gradle file',
69
+ type: String,
70
+ optional: true,
71
+ conflicting_options: [:project_root_folder]),
61
72
  Fastlane::Helper::GithubHelper.github_token_config_item,
73
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
62
74
  ]
63
75
  end
64
76
 
@@ -7,7 +7,8 @@ module Fastlane
7
7
  require_relative '../../helper/android/android_localize_helper'
8
8
  require_relative '../../helper/git_helper'
9
9
 
10
- res_dir = File.join(ENV['PROJECT_ROOT_FOLDER'] || '.', params[:res_dir])
10
+ project_root_folder = params[:project_root_folder]
11
+ res_dir = File.join(project_root_folder || '.', params[:res_dir])
11
12
 
12
13
  Fastlane::Helper::Android::LocalizeHelper.create_available_languages_file(
13
14
  res_dir: res_dir,
@@ -94,6 +95,7 @@ module Fastlane
94
95
  type: Boolean,
95
96
  default_value: false
96
97
  ),
98
+ Fastlane::Helper::Deprecated.project_root_folder_config_item,
97
99
  ]
98
100
  end
99
101