fastlane 2.185.1 → 2.186.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (63) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +100 -100
  3. data/fastlane/lib/fastlane/actions/deploygate.rb +1 -2
  4. data/fastlane/lib/fastlane/actions/download_app_privacy_details_from_app_store.rb +1 -1
  5. data/fastlane/lib/fastlane/actions/download_dsyms.rb +3 -4
  6. data/fastlane/lib/fastlane/actions/dsym_zip.rb +1 -1
  7. data/fastlane/lib/fastlane/actions/ensure_git_branch.rb +0 -1
  8. data/fastlane/lib/fastlane/actions/ensure_git_status_clean.rb +3 -4
  9. data/fastlane/lib/fastlane/actions/ensure_no_debug_code.rb +3 -5
  10. data/fastlane/lib/fastlane/actions/ensure_xcode_version.rb +1 -2
  11. data/fastlane/lib/fastlane/actions/environment_variable.rb +13 -21
  12. data/fastlane/lib/fastlane/actions/erb.rb +2 -5
  13. data/fastlane/lib/fastlane/actions/get_build_number_repository.rb +1 -1
  14. data/fastlane/lib/fastlane/actions/get_ipa_info_plist_value.rb +0 -1
  15. data/fastlane/lib/fastlane/actions/get_managed_play_store_publishing_rights.rb +29 -34
  16. data/fastlane/lib/fastlane/actions/get_push_certificate.rb +1 -1
  17. data/fastlane/lib/fastlane/actions/git_add.rb +5 -10
  18. data/fastlane/lib/fastlane/actions/git_commit.rb +2 -6
  19. data/fastlane/lib/fastlane/actions/git_remote_branch.rb +57 -0
  20. data/fastlane/lib/fastlane/actions/github_api.rb +2 -5
  21. data/fastlane/lib/fastlane/actions/gradle.rb +11 -19
  22. data/fastlane/lib/fastlane/actions/hg_commit_version_bump.rb +1 -1
  23. data/fastlane/lib/fastlane/actions/hg_push.rb +1 -1
  24. data/fastlane/lib/fastlane/actions/hipchat.rb +4 -5
  25. data/fastlane/lib/fastlane/actions/hockey.rb +5 -12
  26. data/fastlane/lib/fastlane/actions/ifttt.rb +3 -6
  27. data/fastlane/lib/fastlane/actions/import_from_git.rb +2 -4
  28. data/fastlane/lib/fastlane/actions/increment_build_number.rb +1 -2
  29. data/fastlane/lib/fastlane/actions/install_on_device.rb +3 -6
  30. data/fastlane/lib/fastlane/actions/installr.rb +22 -25
  31. data/fastlane/lib/fastlane/actions/ipa.rb +2 -2
  32. data/fastlane/lib/fastlane/actions/jazzy.rb +8 -14
  33. data/fastlane/lib/fastlane/{actions/.git_commit.rb.swp → helper/.git_helper.rb.swp} +0 -0
  34. data/fastlane/lib/fastlane/helper/git_helper.rb +17 -5
  35. data/fastlane/lib/fastlane/swift_fastlane_function.rb +1 -1
  36. data/fastlane/lib/fastlane/version.rb +1 -1
  37. data/fastlane/swift/Deliverfile.swift +1 -1
  38. data/fastlane/swift/DeliverfileProtocol.swift +1 -1
  39. data/fastlane/swift/Fastlane.swift +49 -32
  40. data/fastlane/swift/Gymfile.swift +1 -1
  41. data/fastlane/swift/GymfileProtocol.swift +1 -1
  42. data/fastlane/swift/Matchfile.swift +1 -1
  43. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  44. data/fastlane/swift/Precheckfile.swift +1 -1
  45. data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
  46. data/fastlane/swift/Scanfile.swift +1 -1
  47. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  48. data/fastlane/swift/Screengrabfile.swift +1 -1
  49. data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
  50. data/fastlane/swift/Snapshotfile.swift +1 -1
  51. data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
  52. data/fastlane/swift/formatting/Brewfile.lock.json +11 -11
  53. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +13 -0
  54. data/match/lib/match/importer.rb +3 -0
  55. data/match/lib/match/nuke.rb +2 -3
  56. data/pilot/lib/pilot/build_manager.rb +0 -3
  57. data/pilot/lib/pilot/manager.rb +4 -1
  58. data/snapshot/lib/assets/SnapshotHelper.swift +1 -1
  59. data/spaceship/lib/spaceship/connect_api/api_client.rb +30 -5
  60. data/spaceship/lib/spaceship/connect_api/models/beta_tester.rb +3 -1
  61. data/spaceship/lib/spaceship/connect_api/models/build.rb +3 -1
  62. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +13 -0
  63. metadata +20 -19
@@ -53,18 +53,15 @@ module Fastlane
53
53
  FastlaneCore::ConfigItem.new(key: :value1,
54
54
  env_name: "IFTTT_VALUE1",
55
55
  description: "Extra data sent with the event",
56
- optional: true,
57
- is_string: true),
56
+ optional: true),
58
57
  FastlaneCore::ConfigItem.new(key: :value2,
59
58
  env_name: "IFTTT_VALUE2",
60
59
  description: "Extra data sent with the event",
61
- optional: true,
62
- is_string: true),
60
+ optional: true),
63
61
  FastlaneCore::ConfigItem.new(key: :value3,
64
62
  env_name: "IFTTT_VALUE3",
65
63
  description: "Extra data sent with the event",
66
- optional: true,
67
- is_string: true)
64
+ optional: true)
68
65
  ]
69
66
  end
70
67
 
@@ -24,7 +24,7 @@ module Fastlane
24
24
  # `conflicting_options`, `verify_block`) are completely ignored.
25
25
  FastlaneCore::ConfigItem.new(key: :url,
26
26
  description: "The URL of the repository to import the Fastfile from",
27
- default_value: nil),
27
+ optional: true),
28
28
  FastlaneCore::ConfigItem.new(key: :branch,
29
29
  description: "The branch or tag to check-out on the repository",
30
30
  default_value: 'HEAD',
@@ -39,12 +39,10 @@ module Fastlane
39
39
  optional: true),
40
40
  FastlaneCore::ConfigItem.new(key: :version,
41
41
  description: "The version to checkout on the repository. Optimistic match operator or multiple conditions can be used to select the latest version within constraints",
42
- default_value: nil,
43
- is_string: false,
42
+ type: Array,
44
43
  optional: true),
45
44
  FastlaneCore::ConfigItem.new(key: :cache_path,
46
45
  description: "The path to a directory where the repository should be cloned into. Defaults to `nil`, which causes the repository to be cloned on every call, to a temporary directory",
47
- default_value: nil,
48
46
  optional: true)
49
47
  ]
50
48
  end
@@ -66,11 +66,10 @@ module Fastlane
66
66
  env_name: "FL_BUILD_NUMBER_BUILD_NUMBER",
67
67
  description: "Change to a specific version. When you provide this parameter, Apple Generic Versioning does not have to be enabled",
68
68
  optional: true,
69
- is_string: false),
69
+ skip_type_validation: true), # allow Integer, String
70
70
  FastlaneCore::ConfigItem.new(key: :skip_info_plist,
71
71
  env_name: "FL_BUILD_NUMBER_SKIP_INFO_PLIST",
72
72
  description: "Don't update Info.plist files when updating the build version",
73
- is_string: false,
74
73
  type: Boolean,
75
74
  default_value: false),
76
75
  FastlaneCore::ConfigItem.new(key: :xcodeproj,
@@ -35,26 +35,23 @@ module Fastlane
35
35
  short_option: "-X",
36
36
  env_name: "FL_IOD_EXTRA",
37
37
  description: "Extra Commandline arguments passed to ios-deploy",
38
- optional: true,
39
- is_string: true),
38
+ optional: true),
40
39
  FastlaneCore::ConfigItem.new(key: :device_id,
41
40
  short_option: "-d",
42
41
  env_name: "FL_IOD_DEVICE_ID",
43
42
  description: "id of the device / if not set defaults to first found device",
44
- optional: true,
45
- is_string: true),
43
+ optional: true),
46
44
  FastlaneCore::ConfigItem.new(key: :skip_wifi,
47
45
  short_option: "-w",
48
46
  env_name: "FL_IOD_WIFI",
49
47
  description: "Do not search for devices via WiFi",
50
48
  optional: true,
51
- is_string: false),
49
+ type: Boolean),
52
50
  FastlaneCore::ConfigItem.new(key: :ipa,
53
51
  short_option: "-i",
54
52
  env_name: "FL_IOD_IPA",
55
53
  description: "The IPA file to put on the device",
56
54
  optional: true,
57
- is_string: true,
58
55
  default_value: Actions.lane_context[SharedValues::IPA_OUTPUT_PATH] || Dir["*.ipa"].first,
59
56
  default_value_dynamic: true,
60
57
  verify_block: proc do |value|
@@ -66,35 +66,32 @@ module Fastlane
66
66
  def self.available_options
67
67
  [
68
68
  FastlaneCore::ConfigItem.new(key: :api_token,
69
- env_name: "INSTALLR_API_TOKEN",
70
- sensitive: true,
71
- description: "API Token for Installr Access",
72
- verify_block: proc do |value|
73
- UI.user_error!("No API token for Installr given, pass using `api_token: 'token'`") unless value && !value.empty?
74
- end),
69
+ env_name: "INSTALLR_API_TOKEN",
70
+ sensitive: true,
71
+ description: "API Token for Installr Access",
72
+ verify_block: proc do |value|
73
+ UI.user_error!("No API token for Installr given, pass using `api_token: 'token'`") unless value && !value.empty?
74
+ end),
75
75
  FastlaneCore::ConfigItem.new(key: :ipa,
76
- env_name: "INSTALLR_IPA_PATH",
77
- description: "Path to your IPA file. Optional if you use the _gym_ or _xcodebuild_ action",
78
- default_value: Actions.lane_context[SharedValues::IPA_OUTPUT_PATH],
79
- default_value_dynamic: true,
80
- verify_block: proc do |value|
81
- UI.user_error!("Couldn't find build file at path '#{value}'") unless File.exist?(value)
82
- end),
76
+ env_name: "INSTALLR_IPA_PATH",
77
+ description: "Path to your IPA file. Optional if you use the _gym_ or _xcodebuild_ action",
78
+ default_value: Actions.lane_context[SharedValues::IPA_OUTPUT_PATH],
79
+ default_value_dynamic: true,
80
+ verify_block: proc do |value|
81
+ UI.user_error!("Couldn't find build file at path '#{value}'") unless File.exist?(value)
82
+ end),
83
83
  FastlaneCore::ConfigItem.new(key: :notes,
84
- env_name: "INSTALLR_NOTES",
85
- description: "Release notes",
86
- is_string: true,
87
- optional: true),
84
+ env_name: "INSTALLR_NOTES",
85
+ description: "Release notes",
86
+ optional: true),
88
87
  FastlaneCore::ConfigItem.new(key: :notify,
89
- env_name: "INSTALLR_NOTIFY",
90
- description: "Groups to notify (e.g. 'dev,qa')",
91
- is_string: true,
92
- optional: true),
88
+ env_name: "INSTALLR_NOTIFY",
89
+ description: "Groups to notify (e.g. 'dev,qa')",
90
+ optional: true),
93
91
  FastlaneCore::ConfigItem.new(key: :add,
94
- env_name: "INSTALLR_ADD",
95
- description: "Groups to add (e.g. 'exec,ops')",
96
- is_string: true,
97
- optional: true)
92
+ env_name: "INSTALLR_ADD",
93
+ description: "Groups to add (e.g. 'exec,ops')",
94
+ optional: true)
98
95
  ]
99
96
  end
100
97
 
@@ -159,12 +159,12 @@ module Fastlane
159
159
  env_name: "IPA_CLEAN",
160
160
  description: "Clean project before building",
161
161
  optional: true,
162
- is_string: false),
162
+ type: Boolean),
163
163
  FastlaneCore::ConfigItem.new(key: :archive,
164
164
  env_name: "IPA_ARCHIVE",
165
165
  description: "Archive project after building",
166
166
  optional: true,
167
- is_string: false),
167
+ type: Boolean),
168
168
  FastlaneCore::ConfigItem.new(key: :destination,
169
169
  env_name: "IPA_DESTINATION",
170
170
  description: "Build destination. Defaults to current directory",
@@ -19,20 +19,14 @@ module Fastlane
19
19
 
20
20
  def self.available_options
21
21
  [
22
- FastlaneCore::ConfigItem.new(
23
- key: :config,
24
- env_name: 'FL_JAZZY_CONFIG',
25
- description: 'Path to jazzy config file',
26
- is_string: true,
27
- optional: true
28
- ),
29
- FastlaneCore::ConfigItem.new(
30
- key: :module_version,
31
- env_name: 'FL_JAZZY_MODULE_VERSION',
32
- description: 'Version string to use as part of the the default docs title and inside the docset',
33
- is_string: true,
34
- optional: true
35
- )
22
+ FastlaneCore::ConfigItem.new(key: :config,
23
+ env_name: 'FL_JAZZY_CONFIG',
24
+ description: 'Path to jazzy config file',
25
+ optional: true),
26
+ FastlaneCore::ConfigItem.new(key: :module_version,
27
+ env_name: 'FL_JAZZY_MODULE_VERSION',
28
+ description: 'Version string to use as part of the the default docs title and inside the docset',
29
+ optional: true)
36
30
  ]
37
31
  end
38
32
 
@@ -131,12 +131,24 @@ module Fastlane
131
131
  # Returns the checked out git branch name or "HEAD" if you're in detached HEAD state
132
132
  def self.git_branch_name_using_HEAD
133
133
  # Rescues if not a git repo or no commits in a git repo
134
- begin
135
- Actions.sh("git rev-parse --abbrev-ref HEAD", log: false).chomp
136
- rescue => err
137
- UI.verbose("Error getting git branch: #{err.message}")
138
- nil
134
+ Actions.sh("git rev-parse --abbrev-ref HEAD", log: false).chomp
135
+ rescue => err
136
+ UI.verbose("Error getting git branch: #{err.message}")
137
+ nil
138
+ end
139
+
140
+ # Returns the default git remote branch name
141
+ def self.git_remote_branch_name(remote_name)
142
+ # Rescues if not a git repo or no remote repo
143
+ if remote_name
144
+ Actions.sh("git remote show #{remote_name} | grep 'HEAD branch' | sed 's/.*: //'", log: false).chomp
145
+ else
146
+ # Query git for the current remote head
147
+ Actions.sh("variable=$(git remote) && git remote show $variable | grep 'HEAD branch' | sed 's/.*: //'", log: false).chomp
139
148
  end
149
+ rescue => err
150
+ UI.verbose("Error getting git default remote branch: #{err.message}")
151
+ nil
140
152
  end
141
153
 
142
154
  private_class_method
@@ -31,7 +31,7 @@ module Fastlane
31
31
 
32
32
  # rubocop:disable Layout/LineLength
33
33
  # class instance?
34
- @reserved_words = %w[associativity break case catch class continue convenience default deinit didSet do else enum extension fallthrough false final for func guard if in infix init inout internal lazy let mutating nil operator override precedence private public repeat required return self static struct subscript super switch throws true try var weak where while willSet].to_set
34
+ @reserved_words = %w[actor associativity async await break case catch class continue convenience default deinit didSet do else enum extension fallthrough false final for func guard if in infix init inout internal lazy let mutating nil operator override precedence private public repeat required return self static struct subscript super switch throws true try var weak where while willSet].to_set
35
35
  # rubocop:enable Layout/LineLength
36
36
  end
37
37
 
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.185.1'.freeze
2
+ VERSION = '2.186.0'.freeze
3
3
  DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
4
4
  MINIMUM_XCODE_RELEASE = "7.0".freeze
5
5
  RUBOCOP_REQUIREMENT = '1.12.1'.freeze
@@ -17,4 +17,4 @@ public class Deliverfile: DeliverfileProtocol {
17
17
  // during the `init` process, and you won't see this message
18
18
  }
19
19
 
20
- // Generated with fastlane 2.185.1
20
+ // Generated with fastlane 2.186.0
@@ -256,4 +256,4 @@ public extension DeliverfileProtocol {
256
256
 
257
257
  // Please don't remove the lines below
258
258
  // They are used to detect outdated files
259
- // FastlaneRunnerAPIVersion [0.9.73]
259
+ // FastlaneRunnerAPIVersion [0.9.74]
@@ -1234,8 +1234,8 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
1234
1234
  flags: OptionalConfigValue<String?> = .fastlaneDefault(nil),
1235
1235
  projectDir: String = ".",
1236
1236
  gradlePath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
1237
- properties: Any? = nil,
1238
- systemProperties: Any? = nil,
1237
+ properties: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
1238
+ systemProperties: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
1239
1239
  serial: String = "",
1240
1240
  printCommand: OptionalConfigValue<Bool> = .fastlaneDefault(true),
1241
1241
  printCommandOutput: OptionalConfigValue<Bool> = .fastlaneDefault(true))
@@ -1247,8 +1247,8 @@ public func buildAndroidApp(task: OptionalConfigValue<String?> = .fastlaneDefaul
1247
1247
  let flagsArg = flags.asRubyArgument(name: "flags", type: nil)
1248
1248
  let projectDirArg = RubyCommand.Argument(name: "project_dir", value: projectDir, type: nil)
1249
1249
  let gradlePathArg = gradlePath.asRubyArgument(name: "gradle_path", type: nil)
1250
- let propertiesArg = RubyCommand.Argument(name: "properties", value: properties, type: nil)
1251
- let systemPropertiesArg = RubyCommand.Argument(name: "system_properties", value: systemProperties, type: nil)
1250
+ let propertiesArg = properties.asRubyArgument(name: "properties", type: nil)
1251
+ let systemPropertiesArg = systemProperties.asRubyArgument(name: "system_properties", type: nil)
1252
1252
  let serialArg = RubyCommand.Argument(name: "serial", value: serial, type: nil)
1253
1253
  let printCommandArg = printCommand.asRubyArgument(name: "print_command", type: nil)
1254
1254
  let printCommandOutputArg = printCommandOutput.asRubyArgument(name: "print_command_output", type: nil)
@@ -3989,13 +3989,13 @@ public func download(url: String) {
3989
3989
  */
3990
3990
  public func downloadAppPrivacyDetailsFromAppStore(username: String,
3991
3991
  appIdentifier: String,
3992
- teamId: Any? = nil,
3992
+ teamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
3993
3993
  teamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
3994
3994
  outputJsonPath: String = "./fastlane/app_privacy_details.json")
3995
3995
  {
3996
3996
  let usernameArg = RubyCommand.Argument(name: "username", value: username, type: nil)
3997
3997
  let appIdentifierArg = RubyCommand.Argument(name: "app_identifier", value: appIdentifier, type: nil)
3998
- let teamIdArg = RubyCommand.Argument(name: "team_id", value: teamId, type: nil)
3998
+ let teamIdArg = teamId.asRubyArgument(name: "team_id", type: nil)
3999
3999
  let teamNameArg = teamName.asRubyArgument(name: "team_name", type: nil)
4000
4000
  let outputJsonPathArg = RubyCommand.Argument(name: "output_json_path", value: outputJsonPath, type: nil)
4001
4001
  let array: [RubyCommand.Argument?] = [usernameArg,
@@ -4040,11 +4040,11 @@ public func downloadAppPrivacyDetailsFromAppStore(username: String,
4040
4040
  */
4041
4041
  public func downloadDsyms(username: String,
4042
4042
  appIdentifier: String,
4043
- teamId: Any? = nil,
4043
+ teamId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4044
4044
  teamName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4045
4045
  platform: String = "ios",
4046
4046
  version: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4047
- buildNumber: Any? = nil,
4047
+ buildNumber: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4048
4048
  minVersion: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4049
4049
  afterUploadedDate: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4050
4050
  outputDirectory: OptionalConfigValue<String?> = .fastlaneDefault(nil),
@@ -4053,11 +4053,11 @@ public func downloadDsyms(username: String,
4053
4053
  {
4054
4054
  let usernameArg = RubyCommand.Argument(name: "username", value: username, type: nil)
4055
4055
  let appIdentifierArg = RubyCommand.Argument(name: "app_identifier", value: appIdentifier, type: nil)
4056
- let teamIdArg = RubyCommand.Argument(name: "team_id", value: teamId, type: nil)
4056
+ let teamIdArg = teamId.asRubyArgument(name: "team_id", type: nil)
4057
4057
  let teamNameArg = teamName.asRubyArgument(name: "team_name", type: nil)
4058
4058
  let platformArg = RubyCommand.Argument(name: "platform", value: platform, type: nil)
4059
4059
  let versionArg = version.asRubyArgument(name: "version", type: nil)
4060
- let buildNumberArg = RubyCommand.Argument(name: "build_number", value: buildNumber, type: nil)
4060
+ let buildNumberArg = buildNumber.asRubyArgument(name: "build_number", type: nil)
4061
4061
  let minVersionArg = minVersion.asRubyArgument(name: "min_version", type: nil)
4062
4062
  let afterUploadedDateArg = afterUploadedDate.asRubyArgument(name: "after_uploaded_date", type: nil)
4063
4063
  let outputDirectoryArg = outputDirectory.asRubyArgument(name: "output_directory", type: nil)
@@ -4272,14 +4272,14 @@ public func ensureGitStatusClean(showUncommittedChanges: OptionalConfigValue<Boo
4272
4272
  public func ensureNoDebugCode(text: String,
4273
4273
  path: String = ".",
4274
4274
  extension: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4275
- extensions: Any? = nil,
4275
+ extensions: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
4276
4276
  exclude: OptionalConfigValue<String?> = .fastlaneDefault(nil),
4277
4277
  excludeDirs: OptionalConfigValue<[String]?> = .fastlaneDefault(nil))
4278
4278
  {
4279
4279
  let textArg = RubyCommand.Argument(name: "text", value: text, type: nil)
4280
4280
  let pathArg = RubyCommand.Argument(name: "path", value: path, type: nil)
4281
4281
  let extensionArg = `extension`.asRubyArgument(name: "extension", type: nil)
4282
- let extensionsArg = RubyCommand.Argument(name: "extensions", value: extensions, type: nil)
4282
+ let extensionsArg = extensions.asRubyArgument(name: "extensions", type: nil)
4283
4283
  let excludeArg = exclude.asRubyArgument(name: "exclude", type: nil)
4284
4284
  let excludeDirsArg = excludeDirs.asRubyArgument(name: "exclude_dirs", type: nil)
4285
4285
  let array: [RubyCommand.Argument?] = [textArg,
@@ -5022,7 +5022,7 @@ public func getPushCertificate(development: OptionalConfigValue<Bool> = .fastlan
5022
5022
  p12Password: String,
5023
5023
  pemName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
5024
5024
  outputPath: String = ".",
5025
- newProfile: Any? = nil)
5025
+ newProfile: ((String) -> Void)? = nil)
5026
5026
  {
5027
5027
  let developmentArg = development.asRubyArgument(name: "development", type: nil)
5028
5028
  let websitePushArg = websitePush.asRubyArgument(name: "website_push", type: nil)
@@ -5037,7 +5037,7 @@ public func getPushCertificate(development: OptionalConfigValue<Bool> = .fastlan
5037
5037
  let p12PasswordArg = RubyCommand.Argument(name: "p12_password", value: p12Password, type: nil)
5038
5038
  let pemNameArg = pemName.asRubyArgument(name: "pem_name", type: nil)
5039
5039
  let outputPathArg = RubyCommand.Argument(name: "output_path", value: outputPath, type: nil)
5040
- let newProfileArg = RubyCommand.Argument(name: "new_profile", value: newProfile, type: nil)
5040
+ let newProfileArg = RubyCommand.Argument(name: "new_profile", value: newProfile, type: .stringClosure)
5041
5041
  let array: [RubyCommand.Argument?] = [developmentArg,
5042
5042
  websitePushArg,
5043
5043
  generateP12Arg,
@@ -5094,11 +5094,11 @@ public func getPushCertificate(development: OptionalConfigValue<Bool> = .fastlan
5094
5094
  - shellEscape: Shell escapes paths (set to false if using wildcards or manually escaping spaces in :path)
5095
5095
  - pathspec: **DEPRECATED!** Use `--path` instead - The pathspec you want to add files from
5096
5096
  */
5097
- public func gitAdd(path: Any? = nil,
5097
+ public func gitAdd(path: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
5098
5098
  shellEscape: OptionalConfigValue<Bool> = .fastlaneDefault(true),
5099
5099
  pathspec: OptionalConfigValue<String?> = .fastlaneDefault(nil))
5100
5100
  {
5101
- let pathArg = RubyCommand.Argument(name: "path", value: path, type: nil)
5101
+ let pathArg = path.asRubyArgument(name: "path", type: nil)
5102
5102
  let shellEscapeArg = shellEscape.asRubyArgument(name: "shell_escape", type: nil)
5103
5103
  let pathspecArg = pathspec.asRubyArgument(name: "pathspec", type: nil)
5104
5104
  let array: [RubyCommand.Argument?] = [pathArg,
@@ -5131,7 +5131,7 @@ public func gitAdd(path: Any? = nil,
5131
5131
  - skipGitHooks: Set to true to pass `--no-verify` to git
5132
5132
  - allowNothingToCommit: Set to true to allow commit without any git changes in the files you want to commit
5133
5133
  */
5134
- public func gitCommit(path: Any,
5134
+ public func gitCommit(path: [String],
5135
5135
  message: String,
5136
5136
  skipGitHooks: OptionalConfigValue<Bool> = .fastlaneDefault(false),
5137
5137
  allowNothingToCommit: OptionalConfigValue<Bool> = .fastlaneDefault(false))
@@ -5172,6 +5172,23 @@ public func gitPull(onlyTags: OptionalConfigValue<Bool> = .fastlaneDefault(false
5172
5172
  _ = runner.executeCommand(command)
5173
5173
  }
5174
5174
 
5175
+ /**
5176
+ Returns the name of the current git remote default branch
5177
+
5178
+ - parameter remoteName: The remote repository to check
5179
+
5180
+ If no default remote branch could be found, this action will return nil. This is a wrapper for the internal action Actions.git_default_remote_branch_name
5181
+ */
5182
+ @discardableResult public func gitRemoteBranch(remoteName: OptionalConfigValue<String?> = .fastlaneDefault(nil)) -> String {
5183
+ let remoteNameArg = remoteName.asRubyArgument(name: "remote_name", type: nil)
5184
+ let array: [RubyCommand.Argument?] = [remoteNameArg]
5185
+ let args: [RubyCommand.Argument] = array
5186
+ .filter { $0?.value != nil }
5187
+ .compactMap { $0 }
5188
+ let command = RubyCommand(commandID: "", methodName: "git_remote_branch", className: nil, args: args)
5189
+ return runner.executeCommand(command)
5190
+ }
5191
+
5175
5192
  /**
5176
5193
  Executes a git submodule update command
5177
5194
 
@@ -5409,8 +5426,8 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
5409
5426
  flags: OptionalConfigValue<String?> = .fastlaneDefault(nil),
5410
5427
  projectDir: String = ".",
5411
5428
  gradlePath: OptionalConfigValue<String?> = .fastlaneDefault(nil),
5412
- properties: Any? = nil,
5413
- systemProperties: Any? = nil,
5429
+ properties: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
5430
+ systemProperties: OptionalConfigValue<[String: Any]?> = .fastlaneDefault(nil),
5414
5431
  serial: String = "",
5415
5432
  printCommand: OptionalConfigValue<Bool> = .fastlaneDefault(true),
5416
5433
  printCommandOutput: OptionalConfigValue<Bool> = .fastlaneDefault(true))
@@ -5422,8 +5439,8 @@ public func gradle(task: OptionalConfigValue<String?> = .fastlaneDefault(nil),
5422
5439
  let flagsArg = flags.asRubyArgument(name: "flags", type: nil)
5423
5440
  let projectDirArg = RubyCommand.Argument(name: "project_dir", value: projectDir, type: nil)
5424
5441
  let gradlePathArg = gradlePath.asRubyArgument(name: "gradle_path", type: nil)
5425
- let propertiesArg = RubyCommand.Argument(name: "properties", value: properties, type: nil)
5426
- let systemPropertiesArg = RubyCommand.Argument(name: "system_properties", value: systemProperties, type: nil)
5442
+ let propertiesArg = properties.asRubyArgument(name: "properties", type: nil)
5443
+ let systemPropertiesArg = systemProperties.asRubyArgument(name: "system_properties", type: nil)
5427
5444
  let serialArg = RubyCommand.Argument(name: "serial", value: serial, type: nil)
5428
5445
  let printCommandArg = printCommand.asRubyArgument(name: "print_command", type: nil)
5429
5446
  let printCommandOutputArg = printCommandOutput.asRubyArgument(name: "print_command_output", type: nil)
@@ -6013,11 +6030,11 @@ public func importCertificate(certificatePath: String,
6013
6030
 
6014
6031
  - returns: The new build number
6015
6032
  */
6016
- @discardableResult public func incrementBuildNumber(buildNumber: Any? = nil,
6033
+ @discardableResult public func incrementBuildNumber(buildNumber: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6017
6034
  skipInfoPlist: OptionalConfigValue<Bool> = .fastlaneDefault(false),
6018
6035
  xcodeproj: OptionalConfigValue<String?> = .fastlaneDefault(nil)) -> String
6019
6036
  {
6020
- let buildNumberArg = RubyCommand.Argument(name: "build_number", value: buildNumber, type: nil)
6037
+ let buildNumberArg = buildNumber.asRubyArgument(name: "build_number", type: nil)
6021
6038
  let skipInfoPlistArg = skipInfoPlist.asRubyArgument(name: "skip_info_plist", type: nil)
6022
6039
  let xcodeprojArg = xcodeproj.asRubyArgument(name: "xcodeproj", type: nil)
6023
6040
  let array: [RubyCommand.Argument?] = [buildNumberArg,
@@ -6073,12 +6090,12 @@ public func importCertificate(certificatePath: String,
6073
6090
  */
6074
6091
  public func installOnDevice(extra: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6075
6092
  deviceId: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6076
- skipWifi: Any? = nil,
6093
+ skipWifi: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
6077
6094
  ipa: OptionalConfigValue<String?> = .fastlaneDefault(nil))
6078
6095
  {
6079
6096
  let extraArg = extra.asRubyArgument(name: "extra", type: nil)
6080
6097
  let deviceIdArg = deviceId.asRubyArgument(name: "device_id", type: nil)
6081
- let skipWifiArg = RubyCommand.Argument(name: "skip_wifi", value: skipWifi, type: nil)
6098
+ let skipWifiArg = skipWifi.asRubyArgument(name: "skip_wifi", type: nil)
6082
6099
  let ipaArg = ipa.asRubyArgument(name: "ipa", type: nil)
6083
6100
  let array: [RubyCommand.Argument?] = [extraArg,
6084
6101
  deviceIdArg,
@@ -6186,8 +6203,8 @@ public func ipa(workspace: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6186
6203
  project: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6187
6204
  configuration: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6188
6205
  scheme: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6189
- clean: Any? = nil,
6190
- archive: Any? = nil,
6206
+ clean: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
6207
+ archive: OptionalConfigValue<Bool?> = .fastlaneDefault(nil),
6191
6208
  destination: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6192
6209
  embed: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6193
6210
  identity: OptionalConfigValue<String?> = .fastlaneDefault(nil),
@@ -6200,8 +6217,8 @@ public func ipa(workspace: OptionalConfigValue<String?> = .fastlaneDefault(nil),
6200
6217
  let projectArg = project.asRubyArgument(name: "project", type: nil)
6201
6218
  let configurationArg = configuration.asRubyArgument(name: "configuration", type: nil)
6202
6219
  let schemeArg = scheme.asRubyArgument(name: "scheme", type: nil)
6203
- let cleanArg = RubyCommand.Argument(name: "clean", value: clean, type: nil)
6204
- let archiveArg = RubyCommand.Argument(name: "archive", value: archive, type: nil)
6220
+ let cleanArg = clean.asRubyArgument(name: "clean", type: nil)
6221
+ let archiveArg = archive.asRubyArgument(name: "archive", type: nil)
6205
6222
  let destinationArg = destination.asRubyArgument(name: "destination", type: nil)
6206
6223
  let embedArg = embed.asRubyArgument(name: "embed", type: nil)
6207
6224
  let identityArg = identity.asRubyArgument(name: "identity", type: nil)
@@ -7379,7 +7396,7 @@ public func pem(development: OptionalConfigValue<Bool> = .fastlaneDefault(false)
7379
7396
  p12Password: String,
7380
7397
  pemName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
7381
7398
  outputPath: String = ".",
7382
- newProfile: Any? = nil)
7399
+ newProfile: ((String) -> Void)? = nil)
7383
7400
  {
7384
7401
  let developmentArg = development.asRubyArgument(name: "development", type: nil)
7385
7402
  let websitePushArg = websitePush.asRubyArgument(name: "website_push", type: nil)
@@ -7394,7 +7411,7 @@ public func pem(development: OptionalConfigValue<Bool> = .fastlaneDefault(false)
7394
7411
  let p12PasswordArg = RubyCommand.Argument(name: "p12_password", value: p12Password, type: nil)
7395
7412
  let pemNameArg = pemName.asRubyArgument(name: "pem_name", type: nil)
7396
7413
  let outputPathArg = RubyCommand.Argument(name: "output_path", value: outputPath, type: nil)
7397
- let newProfileArg = RubyCommand.Argument(name: "new_profile", value: newProfile, type: nil)
7414
+ let newProfileArg = RubyCommand.Argument(name: "new_profile", value: newProfile, type: .stringClosure)
7398
7415
  let array: [RubyCommand.Argument?] = [developmentArg,
7399
7416
  websitePushArg,
7400
7417
  generateP12Arg,
@@ -13134,4 +13151,4 @@ public let snapshotfile = Snapshotfile()
13134
13151
 
13135
13152
  // Please don't remove the lines below
13136
13153
  // They are used to detect outdated files
13137
- // FastlaneRunnerAPIVersion [0.9.126]
13154
+ // FastlaneRunnerAPIVersion [0.9.127]