fastlane 2.104.0 → 2.105.1

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.
Files changed (52) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +61 -61
  3. data/deliver/lib/deliver/app_screenshot.rb +15 -0
  4. data/fastlane/lib/fastlane/actions/add_git_tag.rb +1 -1
  5. data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +1 -1
  6. data/fastlane/lib/fastlane/actions/deploygate.rb +11 -4
  7. data/fastlane/lib/fastlane/actions/hockey.rb +1 -1
  8. data/fastlane/lib/fastlane/actions/import_from_git.rb +1 -0
  9. data/fastlane/lib/fastlane/actions/modify_services.rb +1 -0
  10. data/fastlane/lib/fastlane/actions/push_git_tags.rb +7 -2
  11. data/fastlane/lib/fastlane/actions/push_to_git_remote.rb +11 -2
  12. data/fastlane/lib/fastlane/actions/tryouts.rb +1 -1
  13. data/fastlane/lib/fastlane/actions/verify_build.rb +4 -0
  14. data/fastlane/lib/fastlane/actions/zip.rb +10 -1
  15. data/fastlane/lib/fastlane/fast_file.rb +1 -1
  16. data/fastlane/lib/fastlane/runner.rb +1 -1
  17. data/fastlane/lib/fastlane/server/socket_server_action_command_executor.rb +1 -1
  18. data/fastlane/lib/fastlane/version.rb +1 -1
  19. data/fastlane/swift/Deliverfile.swift +1 -1
  20. data/fastlane/swift/Fastlane.swift +25 -11
  21. data/fastlane/swift/Gymfile.swift +1 -1
  22. data/fastlane/swift/Matchfile.swift +1 -1
  23. data/fastlane/swift/Precheckfile.swift +1 -1
  24. data/fastlane/swift/Scanfile.swift +1 -1
  25. data/fastlane/swift/ScanfileProtocol.swift +3 -1
  26. data/fastlane/swift/Screengrabfile.swift +1 -1
  27. data/fastlane/swift/Snapshotfile.swift +1 -1
  28. data/fastlane_core/lib/fastlane_core/analytics/action_completion_context.rb +6 -3
  29. data/fastlane_core/lib/fastlane_core/analytics/action_launch_context.rb +5 -5
  30. data/fastlane_core/lib/fastlane_core/analytics/analytics_event_builder.rb +4 -2
  31. data/fastlane_core/lib/fastlane_core/analytics/analytics_session.rb +2 -1
  32. data/fastlane_core/lib/fastlane_core/cert_checker.rb +1 -1
  33. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +1 -1
  34. data/fastlane_core/lib/fastlane_core/core_ext/shellwords.rb +63 -0
  35. data/fastlane_core/lib/fastlane_core/fastlane_folder.rb +1 -0
  36. data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +3 -1
  37. data/fastlane_core/lib/fastlane_core.rb +1 -0
  38. data/produce/lib/produce/commands_generator.rb +2 -0
  39. data/produce/lib/produce/developer_center.rb +1 -0
  40. data/produce/lib/produce/service.rb +11 -1
  41. data/scan/lib/scan/options.rb +6 -1
  42. data/scan/lib/scan/runner.rb +3 -2
  43. data/scan/lib/scan/test_command_generator.rb +4 -2
  44. data/scan/lib/scan/xcpretty_reporter_options_generator.rb +8 -2
  45. data/spaceship/lib/spaceship/du/du_client.rb +4 -0
  46. data/spaceship/lib/spaceship/portal/certificate.rb +5 -1
  47. data/spaceship/lib/spaceship/test_flight/test_info.rb +17 -1
  48. data/spaceship/lib/spaceship/tunes/device_type.rb +1 -1
  49. data/supply/lib/supply/options.rb +7 -2
  50. data/supply/lib/supply/uploader.rb +1 -1
  51. metadata +17 -17
  52. data/fastlane_core/lib/fastlane_core/.command_executor.rb.swp +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: ea532950502bd5448c144045cec72c59174c2935
4
- data.tar.gz: f0005241440286c16af2d5ca3ce6895a0c0bafbe
3
+ metadata.gz: d9d8e79ebcd2d4b0433ed00a4e3e4b1bf01a4aca
4
+ data.tar.gz: 83f96d4745e3b31400f4848b3df454ff9d27969b
5
5
  SHA512:
6
- metadata.gz: '0818efee4e51ddc9c23988da1448596aff4481650ecc381d61536be9d3d947694b05ff2c4450aa49f65e7c442a83731ac1fad55da3060f8a180764c7b5922f4e'
7
- data.tar.gz: 1e196366b4e2579baa59c17c55307b02600b76d942562a39849c1ee69512ad494d9f844dcde3e11dfade0872a01978f324d526f03c8ac40f7e5433e29c79e9ae
6
+ metadata.gz: 19370087b266f3f9bd40f0ba03f7c285a4b6ca0b04b0f9536bba11e8d0e9b2573869b8411ac0d314aa84174fb461568a3db5cfb70583b2a4244868d17182ae02
7
+ data.tar.gz: b4fc2285c9627cee86eda525e45e1e7e65c098bea24c67a7132ebbe4de2eaa2485867378208165426e00a0bfddfd409241c4d7c32b44dccaf9eabd95c94be8ac
data/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
  [![Twitter: @FastlaneTools](https://img.shields.io/badge/contact-@FastlaneTools-blue.svg?style=flat)](https://twitter.com/FastlaneTools)
8
8
  [![License](https://img.shields.io/badge/license-MIT-green.svg?style=flat)](https://github.com/fastlane/fastlane/blob/master/LICENSE)
9
9
  [![Gem](https://img.shields.io/gem/v/fastlane.svg?style=flat)](https://rubygems.org/gems/fastlane)
10
- [![Build Status](https://img.shields.io/circleci/project/fastlane/fastlane/master.svg?style=flat)](https://circleci.com/gh/fastlane/fastlane)
10
+ [![Build Status](https://img.shields.io/circleci/project/github/fastlane/fastlane/master.svg)](https://circleci.com/gh/fastlane/fastlane)
11
11
 
12
12
  _fastlane_ is a tool for iOS and Android developers to automate tedious tasks like generating screenshots, dealing with provisioning profiles, and releasing your application.
13
13
 
@@ -32,11 +32,11 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
32
32
 
33
33
  <table id='team'>
34
34
  <tr>
35
- <td id='maksym-grebenets'>
36
- <a href='https://github.com/mgrebenets'>
37
- <img src='https://github.com/mgrebenets.png?size=140'>
35
+ <td id='olivier-halligon'>
36
+ <a href='https://github.com/AliSoftware'>
37
+ <img src='https://github.com/AliSoftware.png?size=140'>
38
38
  </a>
39
- <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
39
+ <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
40
40
  </td>
41
41
  <td id='matthew-ellis'>
42
42
  <a href='https://github.com/matthewellis'>
@@ -44,75 +44,81 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
44
44
  </a>
45
45
  <h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
46
46
  </td>
47
+ <td id='stefan-natchev'>
48
+ <a href='https://github.com/snatchev'>
49
+ <img src='https://github.com/snatchev.png?size=140'>
50
+ </a>
51
+ <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
52
+ </td>
47
53
  <td id='jimmy-dee'>
48
54
  <a href='https://github.com/jdee'>
49
55
  <img src='https://github.com/jdee.png?size=140'>
50
56
  </a>
51
57
  <h4 align='center'>Jimmy Dee</h4>
52
58
  </td>
59
+ <td id='jorge-revuelta-h'>
60
+ <a href='https://github.com/minuscorp'>
61
+ <img src='https://github.com/minuscorp.png?size=140'>
62
+ </a>
63
+ <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
64
+ </td>
65
+ </tr>
66
+ <tr>
53
67
  <td id='josh-holtz'>
54
68
  <a href='https://github.com/joshdholtz'>
55
69
  <img src='https://github.com/joshdholtz.png?size=140'>
56
70
  </a>
57
71
  <h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
58
72
  </td>
59
- <td id='joshua-liebowitz'>
60
- <a href='https://github.com/taquitos'>
61
- <img src='https://github.com/taquitos.png?size=140'>
73
+ <td id='danielle-tomlinson'>
74
+ <a href='https://github.com/DanToml'>
75
+ <img src='https://github.com/DanToml.png?size=140'>
62
76
  </a>
63
- <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
77
+ <h4 align='center'><a href='https://twitter.com/DanToml'>Danielle Tomlinson</a></h4>
64
78
  </td>
65
- </tr>
66
- <tr>
67
79
  <td id='felix-krause'>
68
80
  <a href='https://github.com/KrauseFx'>
69
81
  <img src='https://github.com/KrauseFx.png?size=140'>
70
82
  </a>
71
83
  <h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
72
84
  </td>
73
- <td id='stefan-natchev'>
74
- <a href='https://github.com/snatchev'>
75
- <img src='https://github.com/snatchev.png?size=140'>
85
+ <td id='jan-piotrowski'>
86
+ <a href='https://github.com/janpio'>
87
+ <img src='https://github.com/janpio.png?size=140'>
76
88
  </a>
77
- <h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
89
+ <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
78
90
  </td>
79
- <td id='helmut-januschka'>
80
- <a href='https://github.com/hjanuschka'>
81
- <img src='https://github.com/hjanuschka.png?size=140'>
91
+ <td id='aaron-brager'>
92
+ <a href='https://github.com/getaaron'>
93
+ <img src='https://github.com/getaaron.png?size=140'>
82
94
  </a>
83
- <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
95
+ <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
84
96
  </td>
97
+ </tr>
98
+ <tr>
85
99
  <td id='fumiya-nakamura'>
86
100
  <a href='https://github.com/nafu'>
87
101
  <img src='https://github.com/nafu.png?size=140'>
88
102
  </a>
89
103
  <h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
90
104
  </td>
91
- <td id='jorge-revuelta-h'>
92
- <a href='https://github.com/minuscorp'>
93
- <img src='https://github.com/minuscorp.png?size=140'>
94
- </a>
95
- <h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
96
- </td>
97
- </tr>
98
- <tr>
99
- <td id='olivier-halligon'>
100
- <a href='https://github.com/AliSoftware'>
101
- <img src='https://github.com/AliSoftware.png?size=140'>
105
+ <td id='luka-mirosevic'>
106
+ <a href='https://github.com/lmirosevic'>
107
+ <img src='https://github.com/lmirosevic.png?size=140'>
102
108
  </a>
103
- <h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
109
+ <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
104
110
  </td>
105
- <td id='jan-piotrowski'>
106
- <a href='https://github.com/janpio'>
107
- <img src='https://github.com/janpio.png?size=140'>
111
+ <td id='helmut-januschka'>
112
+ <a href='https://github.com/hjanuschka'>
113
+ <img src='https://github.com/hjanuschka.png?size=140'>
108
114
  </a>
109
- <h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
115
+ <h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
110
116
  </td>
111
- <td id='jérôme-lacoste'>
112
- <a href='https://github.com/lacostej'>
113
- <img src='https://github.com/lacostej.png?size=140'>
117
+ <td id='joshua-liebowitz'>
118
+ <a href='https://github.com/taquitos'>
119
+ <img src='https://github.com/taquitos.png?size=140'>
114
120
  </a>
115
- <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
121
+ <h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
116
122
  </td>
117
123
  <td id='andrew-mcburney'>
118
124
  <a href='https://github.com/AndrewMcBurney'>
@@ -120,19 +126,13 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
120
126
  </a>
121
127
  <h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
122
128
  </td>
123
- <td id='iulian-onofrei'>
124
- <a href='https://github.com/revolter'>
125
- <img src='https://github.com/revolter.png?size=140'>
126
- </a>
127
- <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
128
- </td>
129
129
  </tr>
130
130
  <tr>
131
- <td id='luka-mirosevic'>
132
- <a href='https://github.com/lmirosevic'>
133
- <img src='https://github.com/lmirosevic.png?size=140'>
131
+ <td id='kohki-miki'>
132
+ <a href='https://github.com/giginet'>
133
+ <img src='https://github.com/giginet.png?size=140'>
134
134
  </a>
135
- <h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
135
+ <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
136
136
  </td>
137
137
  <td id='manu-wallner'>
138
138
  <a href='https://github.com/milch'>
@@ -140,23 +140,23 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
140
140
  </a>
141
141
  <h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
142
142
  </td>
143
- <td id='aaron-brager'>
144
- <a href='https://github.com/getaaron'>
145
- <img src='https://github.com/getaaron.png?size=140'>
143
+ <td id='jérôme-lacoste'>
144
+ <a href='https://github.com/lacostej'>
145
+ <img src='https://github.com/lacostej.png?size=140'>
146
146
  </a>
147
- <h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
147
+ <h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
148
148
  </td>
149
- <td id='danielle-tomlinson'>
150
- <a href='https://github.com/DanToml'>
151
- <img src='https://github.com/DanToml.png?size=140'>
149
+ <td id='maksym-grebenets'>
150
+ <a href='https://github.com/mgrebenets'>
151
+ <img src='https://github.com/mgrebenets.png?size=140'>
152
152
  </a>
153
- <h4 align='center'><a href='https://twitter.com/DanToml'>Danielle Tomlinson</a></h4>
153
+ <h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
154
154
  </td>
155
- <td id='kohki-miki'>
156
- <a href='https://github.com/giginet'>
157
- <img src='https://github.com/giginet.png?size=140'>
155
+ <td id='iulian-onofrei'>
156
+ <a href='https://github.com/revolter'>
157
+ <img src='https://github.com/revolter.png?size=140'>
158
158
  </a>
159
- <h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
159
+ <h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
160
160
  </td>
161
161
  </tr>
162
162
  </table>
@@ -17,6 +17,8 @@ module Deliver
17
17
  IOS_55 = "iOS-5.5-in"
18
18
  # iPhone X
19
19
  IOS_58 = "iOS-5.8-in"
20
+ # iPhone XS Max
21
+ IOS_65 = "iOS-6.5-in"
20
22
  # iPad
21
23
  IOS_IPAD = "iOS-iPad"
22
24
  # iPad 10.5
@@ -31,6 +33,8 @@ module Deliver
31
33
  IOS_55_MESSAGES = "iOS-5.5-in-messages"
32
34
  # iPhone X iMessage
33
35
  IOS_58_MESSAGES = "iOS-5.8-in-messages"
36
+ # iPhone XS Max iMessage
37
+ IOS_65_MESSAGES = "iOS-6.5-in-messages"
34
38
  # iPad iMessage
35
39
  IOS_IPAD_MESSAGES = "iOS-iPad-messages"
36
40
  # iPad 10.5 iMessage
@@ -75,6 +79,7 @@ module Deliver
75
79
  ScreenSize::IOS_47 => "iphone6",
76
80
  ScreenSize::IOS_55 => "iphone6Plus",
77
81
  ScreenSize::IOS_58 => "iphone58",
82
+ ScreenSize::IOS_65 => "iphone65",
78
83
  ScreenSize::IOS_IPAD => "ipad",
79
84
  ScreenSize::IOS_IPAD_10_5 => "ipad105",
80
85
  ScreenSize::IOS_IPAD_PRO => "ipadPro",
@@ -82,6 +87,7 @@ module Deliver
82
87
  ScreenSize::IOS_47_MESSAGES => "iphone6",
83
88
  ScreenSize::IOS_55_MESSAGES => "iphone6Plus",
84
89
  ScreenSize::IOS_58_MESSAGES => "iphone58",
90
+ ScreenSize::IOS_65_MESSAGES => "iphone65",
85
91
  ScreenSize::IOS_IPAD_MESSAGES => "ipad",
86
92
  ScreenSize::IOS_IPAD_PRO_MESSAGES => "ipadPro",
87
93
  ScreenSize::IOS_IPAD_10_5_MESSAGES => "ipad105",
@@ -100,6 +106,7 @@ module Deliver
100
106
  ScreenSize::IOS_47 => "iPhone 6",
101
107
  ScreenSize::IOS_55 => "iPhone 6 Plus",
102
108
  ScreenSize::IOS_58 => "iPhone X",
109
+ ScreenSize::IOS_65 => "iPhone XS Max",
103
110
  ScreenSize::IOS_IPAD => "iPad",
104
111
  ScreenSize::IOS_IPAD_10_5 => "iPad 10.5",
105
112
  ScreenSize::IOS_IPAD_PRO => "iPad Pro",
@@ -107,6 +114,7 @@ module Deliver
107
114
  ScreenSize::IOS_47_MESSAGES => "iPhone 6 (iMessage)",
108
115
  ScreenSize::IOS_55_MESSAGES => "iPhone 6 Plus (iMessage)",
109
116
  ScreenSize::IOS_58_MESSAGES => "iPhone X (iMessage)",
117
+ ScreenSize::IOS_65_MESSAGES => "iPhone XS Max (iMessage)",
110
118
  ScreenSize::IOS_IPAD_MESSAGES => "iPad (iMessage)",
111
119
  ScreenSize::IOS_IPAD_PRO_MESSAGES => "iPad Pro (iMessage)",
112
120
  ScreenSize::IOS_IPAD_10_5_MESSAGES => "iPad 10.5 (iMessage)",
@@ -130,6 +138,7 @@ module Deliver
130
138
  ScreenSize::IOS_47_MESSAGES,
131
139
  ScreenSize::IOS_55_MESSAGES,
132
140
  ScreenSize::IOS_58_MESSAGES,
141
+ ScreenSize::IOS_65_MESSAGES,
133
142
  ScreenSize::IOS_IPAD_MESSAGES,
134
143
  ScreenSize::IOS_IPAD_PRO_MESSAGES,
135
144
  ScreenSize::IOS_IPAD_10_5_MESSAGES
@@ -138,6 +147,9 @@ module Deliver
138
147
 
139
148
  def self.device_messages
140
149
  return {
150
+ ScreenSize::IOS_65_MESSAGES => [
151
+ [1242, 2688]
152
+ ],
141
153
  ScreenSize::IOS_58_MESSAGES => [
142
154
  [1125, 2436]
143
155
  ],
@@ -176,6 +188,9 @@ module Deliver
176
188
 
177
189
  def self.devices
178
190
  return {
191
+ ScreenSize::IOS_65 => [
192
+ [1242, 2688]
193
+ ],
179
194
  ScreenSize::IOS_58 => [
180
195
  [1125, 2436]
181
196
  ],
@@ -14,7 +14,7 @@ module Fastlane
14
14
  cmd << ["-am #{message.shellescape}"]
15
15
  cmd << '--force' if options[:force]
16
16
  cmd << '-s' if options[:sign]
17
- cmd << "'#{tag}'"
17
+ cmd << tag.shellescape
18
18
  cmd << options[:commit].to_s if options[:commit]
19
19
 
20
20
  UI.message("Adding git tag '#{tag}' 🎯.")
@@ -132,7 +132,7 @@ module Fastlane
132
132
  is_string: false),
133
133
  FastlaneCore::ConfigItem.new(key: :quiet,
134
134
  env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_TAG_QUIET',
135
- description: 'Whether or not to disbale changelog output',
135
+ description: 'Whether or not to disable changelog output',
136
136
  optional: true,
137
137
  default_value: false,
138
138
  is_string: false),
@@ -45,7 +45,7 @@ module Fastlane
45
45
  user_name = options[:user]
46
46
  binary = options[:ipa] || options[:apk]
47
47
  upload_options = options.values.select do |key, _|
48
- [:message, :distribution_key, :release_note, :disable_notify].include?(key)
48
+ [:message, :distribution_key, :release_note, :disable_notify, :distribution_name].include?(key)
49
49
  end
50
50
 
51
51
  UI.user_error!('missing `ipa` and `apk`. deploygate action needs least one.') unless binary
@@ -160,7 +160,12 @@ module Fastlane
160
160
  is_string: false,
161
161
  default_value: false,
162
162
  env_name: "DEPLOYGATE_DISABLE_NOTIFY",
163
- description: "Disables Push notification emails")
163
+ description: "Disables Push notification emails"),
164
+ FastlaneCore::ConfigItem.new(key: :distribution_name,
165
+ optional: true,
166
+ is_string: true,
167
+ env_name: "DEPLOYGATE_DISTRIBUTION_NAME",
168
+ description: "Target Distribution Name")
164
169
  ]
165
170
  end
166
171
 
@@ -179,14 +184,16 @@ module Fastlane
179
184
  user: "target username or organization name",
180
185
  ipa: "./ipa_file.ipa",
181
186
  message: "Build #{lane_context[SharedValues::BUILD_NUMBER]}",
182
- distribution_key: "(Optional) Target Distribution Key"
187
+ distribution_key: "(Optional) Target Distribution Key",
188
+ distribution_name: "(Optional) Target Distribution Name"
183
189
  )',
184
190
  'deploygate(
185
191
  api_token: "...",
186
192
  user: "target username or organization name",
187
193
  apk: "./apk_file.apk",
188
194
  message: "Build #{lane_context[SharedValues::BUILD_NUMBER]}",
189
- distribution_key: "(Optional) Target Distribution Key"
195
+ distribution_key: "(Optional) Target Distribution Key",
196
+ distribution_name: "(Optional) Target Distribution Name"
190
197
  )'
191
198
  ]
192
199
  end
@@ -323,7 +323,7 @@ module Fastlane
323
323
  FastlaneCore::ConfigItem.new(key: :timeout,
324
324
  env_name: "FL_HOCKEY_TIMEOUT",
325
325
  description: "Request timeout in seconds",
326
- is_string: false,
326
+ type: Integer,
327
327
  optional: true),
328
328
  FastlaneCore::ConfigItem.new(key: :bypass_cdn,
329
329
  env_name: "FL_HOCKEY_BYPASS_CDN",
@@ -33,6 +33,7 @@ module Fastlane
33
33
  FastlaneCore::ConfigItem.new(key: :version,
34
34
  description: "The version to checkout on the respository. Optimistic match operator or multiple conditions can be used to select the latest version within constraints",
35
35
  default_value: nil,
36
+ is_string: false,
36
37
  optional: true)
37
38
  ]
38
39
  end
@@ -47,6 +47,7 @@ module Fastlane
47
47
  app_group: 'app_group',
48
48
  apple_pay: 'apple_pay',
49
49
  associated_domains: 'associated_domains',
50
+ auto_fill_credential: 'auto_fill_credential',
50
51
  data_protection: 'data_protection',
51
52
  game_center: 'game_center',
52
53
  health_kit: 'healthkit',
@@ -5,10 +5,15 @@ module Fastlane
5
5
  command = [
6
6
  'git',
7
7
  'push',
8
- params[:remote],
9
- params[:tag] || '--tags'
8
+ params[:remote]
10
9
  ]
11
10
 
11
+ if params[:tag]
12
+ command << "refs/tags/#{params[:tag]}"
13
+ else
14
+ command << '--tags'
15
+ end
16
+
12
17
  # optionally add the force component
13
18
  command << '--force' if params[:force]
14
19
 
@@ -23,6 +23,9 @@ module Fastlane
23
23
  # optionally add the force component
24
24
  command << '--force' if params[:force]
25
25
 
26
+ # optionally add the force component
27
+ command << '--force-with-lease' if params[:force_with_lease]
28
+
26
29
  # execute our command
27
30
  Actions.sh('pwd')
28
31
  return command.join(' ') if Helper.test?
@@ -50,12 +53,17 @@ module Fastlane
50
53
  FastlaneCore::ConfigItem.new(key: :force,
51
54
  env_name: "FL_PUSH_GIT_FORCE",
52
55
  description: "Force push to remote",
53
- is_string: false,
56
+ type: Boolean,
57
+ default_value: false),
58
+ FastlaneCore::ConfigItem.new(key: :force_with_lease,
59
+ env_name: "FL_PUSH_GIT_FORCE_WITH_LEASE",
60
+ description: "Force push with lease to remote",
61
+ type: Boolean,
54
62
  default_value: false),
55
63
  FastlaneCore::ConfigItem.new(key: :tags,
56
64
  env_name: "FL_PUSH_GIT_TAGS",
57
65
  description: "Whether tags are pushed to remote",
58
- is_string: false,
66
+ type: Boolean,
59
67
  default_value: true),
60
68
  FastlaneCore::ConfigItem.new(key: :remote,
61
69
  env_name: "FL_GIT_PUSH_REMOTE",
@@ -84,6 +92,7 @@ module Fastlane
84
92
  local_branch: "develop", # optional, aliased by "branch", default: "master"
85
93
  remote_branch: "develop", # optional, default is set to local_branch
86
94
  force: true, # optional, default: false
95
+ force_with_lease: true, # optional, default: false
87
96
  tags: false # optional, default: true
88
97
  )'
89
98
  ]
@@ -76,7 +76,7 @@ module Fastlane
76
76
  FastlaneCore::ConfigItem.new(key: :api_token,
77
77
  env_name: "TRYOUTS_API_TOKEN",
78
78
  sensitive: true,
79
- description: "API Token for Tryouts Access",
79
+ description: "API Token (api_key:api_secret) for Tryouts Access",
80
80
  verify_block: proc do |value|
81
81
  UI.user_error!("No API token for Tryouts given, pass using `api_token: 'token'`") unless value && !value.empty?
82
82
  end),
@@ -53,6 +53,10 @@ module Fastlane
53
53
  type = part.split('=')[1].split(':')[0]
54
54
  values['provisioning_type'] = type.downcase =~ /distribution/i ? "distribution" : "development"
55
55
  end
56
+ if part.start_with?("Authority")
57
+ values['authority'] ||= []
58
+ values['authority'] << part.split('=')[1]
59
+ end
56
60
  if part.start_with?("TeamIdentifier")
57
61
  values['team_identifier'] = part.split('=')[1]
58
62
  end
@@ -19,7 +19,12 @@ module Fastlane
19
19
  Dir.chdir(File.expand_path("..", params[:path])) do # required to properly zip
20
20
  zip_options = params[:verbose] ? "r" : "rq"
21
21
 
22
- Actions.sh("zip -#{zip_options} #{absolute_output_path.shellescape} #{File.basename(params[:path]).shellescape}")
22
+ if params[:password]
23
+ password_option = "-P '#{params[:password]}'"
24
+ Actions.sh("zip -#{zip_options} #{password_option} #{absolute_output_path.shellescape} #{File.basename(params[:path]).shellescape}")
25
+ else
26
+ Actions.sh("zip -#{zip_options} #{absolute_output_path.shellescape} #{File.basename(params[:path]).shellescape}")
27
+ end
23
28
  end
24
29
 
25
30
  UI.success("Successfully generated zip file at path '#{File.expand_path(absolute_output_path)}'")
@@ -51,6 +56,10 @@ module Fastlane
51
56
  description: "Enable verbose output of zipped file",
52
57
  default_value: true,
53
58
  type: Boolean,
59
+ optional: true),
60
+ FastlaneCore::ConfigItem.new(key: :password,
61
+ env_name: "FL_ZIP_PASSWORD",
62
+ description: "Encrypt the contents of the zip archive using a password",
54
63
  optional: true)
55
64
  ]
56
65
  end
@@ -329,7 +329,7 @@ module Fastlane
329
329
 
330
330
  def action_launched(action_name)
331
331
  action_launch_context = FastlaneCore::ActionLaunchContext.context_for_action_name(action_name,
332
- configuration_language: "ruby",
332
+ fastlane_client_language: :ruby,
333
333
  args: ARGV)
334
334
  FastlaneCore.session.action_launched(launch_context: action_launch_context)
335
335
  end
@@ -215,7 +215,7 @@ module Fastlane
215
215
  end
216
216
  end
217
217
 
218
- def execute_action(method_sym, class_ref, arguments, custom_dir: nil, from_action: false, configuration_language: nil)
218
+ def execute_action(method_sym, class_ref, arguments, custom_dir: nil, from_action: false)
219
219
  if custom_dir.nil?
220
220
  custom_dir ||= "." if Helper.test?
221
221
  custom_dir ||= ".."
@@ -70,7 +70,7 @@ module Fastlane
70
70
  end
71
71
 
72
72
  def run(action_named: nil, action_class_ref: nil, parameter_map: nil)
73
- action_return = runner.execute_action(action_named, action_class_ref, [parameter_map], custom_dir: '.', configuration_language: "swift")
73
+ action_return = runner.execute_action(action_named, action_class_ref, [parameter_map], custom_dir: '.')
74
74
  return action_return
75
75
  end
76
76
 
@@ -1,5 +1,5 @@
1
1
  module Fastlane
2
- VERSION = '2.104.0'.freeze
2
+ VERSION = '2.105.1'.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 = '0.49.1'.freeze
@@ -18,4 +18,4 @@ class Deliverfile: DeliverfileProtocol {
18
18
 
19
19
 
20
20
 
21
- // Generated with fastlane 2.104.0
21
+ // Generated with fastlane 2.105.1