fastlane 2.212.1 → 2.213.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +96 -96
- data/deliver/lib/deliver/runner.rb +7 -7
- data/fastlane/lib/fastlane/actions/ensure_git_status_clean.rb +44 -5
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/DeliverfileProtocol.swift +1 -1
- data/fastlane/swift/Fastlane.swift +28 -4
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/MatchfileProtocol.swift +5 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/PrecheckfileProtocol.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +5 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/ScreengrabfileProtocol.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane/swift/SnapshotfileProtocol.swift +1 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +17 -17
- data/fastlane_core/lib/fastlane_core/cert_checker.rb +0 -5
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +48 -14
- data/match/lib/match/importer.rb +1 -0
- data/match/lib/match/nuke.rb +1 -0
- data/match/lib/match/options.rb +5 -0
- data/match/lib/match/runner.rb +1 -0
- data/match/lib/match/storage/gitlab_secure_files.rb +10 -4
- data/pilot/lib/pilot/build_manager.rb +4 -4
- data/scan/lib/scan/detect_values.rb +8 -1
- data/scan/lib/scan/options.rb +5 -0
- data/snapshot/lib/snapshot/latest_os_version.rb +2 -5
- data/spaceship/lib/spaceship/connect_api/models/app.rb +2 -2
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +1 -1
- metadata +30 -24
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4ac7eee0c8810536692c5ffca62c0f0924595f223d889affb732cb72f98e64be
|
4
|
+
data.tar.gz: 6d91512766cfd352f98cfa4fc905f366bd4c6eefe8ddf680ddddb1e222827120
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: e7ebfc7fcd8d9883e053fe32e277a31aa70b98082532efdd310d7bd4b6e44976e4445e345c980f41b19baaa31ba6dcff626af80299393d97f83e45ff8f2c4558
|
7
|
+
data.tar.gz: eec9c6e744bced6eacc16bd85c2cf86cc2e5cb920e2c031add3a0d5690b9e6b675b68d5bcb89db5cef48ec1367b2d6e610ac83eb9271c98e08f6ad0ba80225d8
|
data/README.md
CHANGED
@@ -35,17 +35,17 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
35
35
|
<!-- This table is regenerated and resorted on each release -->
|
36
36
|
<table id='team'>
|
37
37
|
<tr>
|
38
|
-
<td id='
|
39
|
-
<a href='https://github.com/
|
40
|
-
<img src='https://github.com/
|
38
|
+
<td id='daniel-jankowski'>
|
39
|
+
<a href='https://github.com/mollyIV'>
|
40
|
+
<img src='https://github.com/mollyIV.png' width='140px;'>
|
41
41
|
</a>
|
42
|
-
<h4 align='center'><a href='https://twitter.com/
|
42
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
43
43
|
</td>
|
44
|
-
<td id='
|
45
|
-
<a href='https://github.com/
|
46
|
-
<img src='https://github.com/
|
44
|
+
<td id='jan-piotrowski'>
|
45
|
+
<a href='https://github.com/janpio'>
|
46
|
+
<img src='https://github.com/janpio.png' width='140px;'>
|
47
47
|
</a>
|
48
|
-
<h4 align='center'><a href='https://twitter.com/
|
48
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
49
49
|
</td>
|
50
50
|
<td id='josh-holtz'>
|
51
51
|
<a href='https://github.com/joshdholtz'>
|
@@ -53,25 +53,31 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
53
53
|
</a>
|
54
54
|
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
55
55
|
</td>
|
56
|
-
<td id='
|
57
|
-
<a href='https://github.com/
|
58
|
-
<img src='https://github.com/
|
56
|
+
<td id='manu-wallner'>
|
57
|
+
<a href='https://github.com/milch'>
|
58
|
+
<img src='https://github.com/milch.png' width='140px;'>
|
59
59
|
</a>
|
60
|
-
<h4 align='center'><a href='https://twitter.com/
|
60
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
61
61
|
</td>
|
62
|
-
<td id='
|
63
|
-
<a href='https://github.com/
|
64
|
-
<img src='https://github.com/
|
62
|
+
<td id='kohki-miki'>
|
63
|
+
<a href='https://github.com/giginet'>
|
64
|
+
<img src='https://github.com/giginet.png' width='140px;'>
|
65
65
|
</a>
|
66
|
-
<h4 align='center'><a href='https://twitter.com/
|
66
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
67
67
|
</td>
|
68
68
|
</tr>
|
69
69
|
<tr>
|
70
|
-
<td id='
|
71
|
-
<a href='https://github.com/
|
72
|
-
<img src='https://github.com/
|
70
|
+
<td id='jérôme-lacoste'>
|
71
|
+
<a href='https://github.com/lacostej'>
|
72
|
+
<img src='https://github.com/lacostej.png' width='140px;'>
|
73
73
|
</a>
|
74
|
-
<h4 align='center'><a href='https://twitter.com/
|
74
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
75
|
+
</td>
|
76
|
+
<td id='olivier-halligon'>
|
77
|
+
<a href='https://github.com/AliSoftware'>
|
78
|
+
<img src='https://github.com/AliSoftware.png' width='140px;'>
|
79
|
+
</a>
|
80
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
75
81
|
</td>
|
76
82
|
<td id='danielle-tomlinson'>
|
77
83
|
<a href='https://github.com/endocrimes'>
|
@@ -79,11 +85,25 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
79
85
|
</a>
|
80
86
|
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
81
87
|
</td>
|
82
|
-
<td id='
|
83
|
-
<a href='https://github.com/
|
84
|
-
<img src='https://github.com/
|
88
|
+
<td id='roger-oba'>
|
89
|
+
<a href='https://github.com/rogerluan'>
|
90
|
+
<img src='https://github.com/rogerluan.png' width='140px;'>
|
85
91
|
</a>
|
86
|
-
<h4 align='center'><a href='https://twitter.com/
|
92
|
+
<h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
|
93
|
+
</td>
|
94
|
+
<td id='luka-mirosevic'>
|
95
|
+
<a href='https://github.com/lmirosevic'>
|
96
|
+
<img src='https://github.com/lmirosevic.png' width='140px;'>
|
97
|
+
</a>
|
98
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
99
|
+
</td>
|
100
|
+
</tr>
|
101
|
+
<tr>
|
102
|
+
<td id='łukasz-grabowski'>
|
103
|
+
<a href='https://github.com/lucgrabowski'>
|
104
|
+
<img src='https://github.com/lucgrabowski.png' width='140px;'>
|
105
|
+
</a>
|
106
|
+
<h4 align='center'>Łukasz Grabowski</h4>
|
87
107
|
</td>
|
88
108
|
<td id='matthew-ellis'>
|
89
109
|
<a href='https://github.com/matthewellis'>
|
@@ -91,6 +111,18 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
91
111
|
</a>
|
92
112
|
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
93
113
|
</td>
|
114
|
+
<td id='jimmy-dee'>
|
115
|
+
<a href='https://github.com/jdee'>
|
116
|
+
<img src='https://github.com/jdee.png' width='140px;'>
|
117
|
+
</a>
|
118
|
+
<h4 align='center'>Jimmy Dee</h4>
|
119
|
+
</td>
|
120
|
+
<td id='max-ott'>
|
121
|
+
<a href='https://github.com/max-ott'>
|
122
|
+
<img src='https://github.com/max-ott.png' width='140px;'>
|
123
|
+
</a>
|
124
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
125
|
+
</td>
|
94
126
|
<td id='iulian-onofrei'>
|
95
127
|
<a href='https://github.com/revolter'>
|
96
128
|
<img src='https://github.com/revolter.png' width='140px;'>
|
@@ -99,23 +131,17 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
99
131
|
</td>
|
100
132
|
</tr>
|
101
133
|
<tr>
|
102
|
-
<td id='
|
103
|
-
<a href='https://github.com/
|
104
|
-
<img src='https://github.com/
|
105
|
-
</a>
|
106
|
-
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
107
|
-
</td>
|
108
|
-
<td id='maksym-grebenets'>
|
109
|
-
<a href='https://github.com/mgrebenets'>
|
110
|
-
<img src='https://github.com/mgrebenets.png' width='140px;'>
|
134
|
+
<td id='joshua-liebowitz'>
|
135
|
+
<a href='https://github.com/taquitos'>
|
136
|
+
<img src='https://github.com/taquitos.png' width='140px;'>
|
111
137
|
</a>
|
112
|
-
<h4 align='center'><a href='https://twitter.com/
|
138
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
113
139
|
</td>
|
114
|
-
<td id='
|
115
|
-
<a href='https://github.com/
|
116
|
-
<img src='https://github.com/
|
140
|
+
<td id='andrew-mcburney'>
|
141
|
+
<a href='https://github.com/armcburney'>
|
142
|
+
<img src='https://github.com/armcburney.png' width='140px;'>
|
117
143
|
</a>
|
118
|
-
<h4 align='center'><a href='https://twitter.com/
|
144
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
119
145
|
</td>
|
120
146
|
<td id='manish-rathi'>
|
121
147
|
<a href='https://github.com/crazymanish'>
|
@@ -123,83 +149,57 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
123
149
|
</a>
|
124
150
|
<h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
|
125
151
|
</td>
|
126
|
-
<td id='
|
127
|
-
<a href='https://github.com/
|
128
|
-
<img src='https://github.com/
|
129
|
-
</a>
|
130
|
-
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
131
|
-
</td>
|
132
|
-
</tr>
|
133
|
-
<tr>
|
134
|
-
<td id='helmut-januschka'>
|
135
|
-
<a href='https://github.com/hjanuschka'>
|
136
|
-
<img src='https://github.com/hjanuschka.png' width='140px;'>
|
137
|
-
</a>
|
138
|
-
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
139
|
-
</td>
|
140
|
-
<td id='olivier-halligon'>
|
141
|
-
<a href='https://github.com/AliSoftware'>
|
142
|
-
<img src='https://github.com/AliSoftware.png' width='140px;'>
|
143
|
-
</a>
|
144
|
-
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
145
|
-
</td>
|
146
|
-
<td id='łukasz-grabowski'>
|
147
|
-
<a href='https://github.com/lucgrabowski'>
|
148
|
-
<img src='https://github.com/lucgrabowski.png' width='140px;'>
|
149
|
-
</a>
|
150
|
-
<h4 align='center'>Łukasz Grabowski</h4>
|
151
|
-
</td>
|
152
|
-
<td id='kohki-miki'>
|
153
|
-
<a href='https://github.com/giginet'>
|
154
|
-
<img src='https://github.com/giginet.png' width='140px;'>
|
152
|
+
<td id='aaron-brager'>
|
153
|
+
<a href='https://github.com/getaaron'>
|
154
|
+
<img src='https://github.com/getaaron.png' width='140px;'>
|
155
155
|
</a>
|
156
|
-
<h4 align='center'><a href='https://twitter.com/
|
156
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
157
157
|
</td>
|
158
|
-
<td id='
|
159
|
-
<a href='https://github.com/
|
160
|
-
<img src='https://github.com/
|
158
|
+
<td id='satoshi-namai'>
|
159
|
+
<a href='https://github.com/ainame'>
|
160
|
+
<img src='https://github.com/ainame.png' width='140px;'>
|
161
161
|
</a>
|
162
|
-
<h4 align='center'><a href='https://twitter.com/
|
162
|
+
<h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
|
163
163
|
</td>
|
164
164
|
</tr>
|
165
165
|
<tr>
|
166
|
-
<td id='
|
167
|
-
<a href='https://github.com/
|
168
|
-
<img src='https://github.com/
|
166
|
+
<td id='fumiya-nakamura'>
|
167
|
+
<a href='https://github.com/nafu'>
|
168
|
+
<img src='https://github.com/nafu.png' width='140px;'>
|
169
169
|
</a>
|
170
|
-
<h4 align='center'>
|
170
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
171
171
|
</td>
|
172
|
-
<td id='
|
173
|
-
<a href='https://github.com/
|
174
|
-
<img src='https://github.com/
|
172
|
+
<td id='helmut-januschka'>
|
173
|
+
<a href='https://github.com/hjanuschka'>
|
174
|
+
<img src='https://github.com/hjanuschka.png' width='140px;'>
|
175
175
|
</a>
|
176
|
-
<h4 align='center'><a href='https://twitter.com/
|
176
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
177
177
|
</td>
|
178
|
-
<td id='
|
179
|
-
<a href='https://github.com/
|
180
|
-
<img src='https://github.com/
|
178
|
+
<td id='jorge-revuelta-h'>
|
179
|
+
<a href='https://github.com/minuscorp'>
|
180
|
+
<img src='https://github.com/minuscorp.png' width='140px;'>
|
181
181
|
</a>
|
182
|
-
<h4 align='center'><a href='https://twitter.com/
|
182
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
183
183
|
</td>
|
184
|
-
<td id='
|
185
|
-
<a href='https://github.com/
|
186
|
-
<img src='https://github.com/
|
184
|
+
<td id='stefan-natchev'>
|
185
|
+
<a href='https://github.com/snatchev'>
|
186
|
+
<img src='https://github.com/snatchev.png' width='140px;'>
|
187
187
|
</a>
|
188
|
-
<h4 align='center'><a href='https://twitter.com/
|
188
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
189
189
|
</td>
|
190
|
-
<td id='
|
191
|
-
<a href='https://github.com/
|
192
|
-
<img src='https://github.com/
|
190
|
+
<td id='felix-krause'>
|
191
|
+
<a href='https://github.com/KrauseFx'>
|
192
|
+
<img src='https://github.com/KrauseFx.png' width='140px;'>
|
193
193
|
</a>
|
194
|
-
<h4 align='center'><a href='https://twitter.com/
|
194
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
195
195
|
</td>
|
196
196
|
</tr>
|
197
197
|
<tr>
|
198
|
-
<td id='
|
199
|
-
<a href='https://github.com/
|
200
|
-
<img src='https://github.com/
|
198
|
+
<td id='maksym-grebenets'>
|
199
|
+
<a href='https://github.com/mgrebenets'>
|
200
|
+
<img src='https://github.com/mgrebenets.png' width='140px;'>
|
201
201
|
</a>
|
202
|
-
<h4 align='center'><a href='https://twitter.com/
|
202
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
203
203
|
</td>
|
204
204
|
</table>
|
205
205
|
|
@@ -179,7 +179,7 @@ module Deliver
|
|
179
179
|
package_path: "/tmp",
|
180
180
|
platform: platform
|
181
181
|
)
|
182
|
-
result = transporter.verify(package_path: package_path)
|
182
|
+
result = transporter.verify(package_path: package_path, asset_path: ipa_path, platform: platform)
|
183
183
|
when "osx"
|
184
184
|
package_path = FastlaneCore::PkgUploadPackageBuilder.new.generate(
|
185
185
|
app_id: Deliver.cache[:app].id,
|
@@ -187,7 +187,7 @@ module Deliver
|
|
187
187
|
package_path: "/tmp",
|
188
188
|
platform: platform
|
189
189
|
)
|
190
|
-
result = transporter.verify(package_path: package_path)
|
190
|
+
result = transporter.verify(package_path: package_path, asset_path: pkg_path, platform: platform)
|
191
191
|
else
|
192
192
|
UI.user_error!("No suitable file found for verify for platform: #{options[:platform]}")
|
193
193
|
end
|
@@ -206,7 +206,7 @@ module Deliver
|
|
206
206
|
pkg_path = options[:pkg]
|
207
207
|
|
208
208
|
platform = options[:platform]
|
209
|
-
transporter = transporter_for_selected_team
|
209
|
+
transporter = transporter_for_selected_team
|
210
210
|
|
211
211
|
case platform
|
212
212
|
when "ios", "appletvos"
|
@@ -266,7 +266,7 @@ module Deliver
|
|
266
266
|
# If itc_provider was explicitly specified, use it.
|
267
267
|
# If there are multiple teams, infer the provider from the selected team name.
|
268
268
|
# If there are fewer than two teams, don't infer the provider.
|
269
|
-
def transporter_for_selected_team
|
269
|
+
def transporter_for_selected_team
|
270
270
|
# Use JWT auth
|
271
271
|
api_token = Spaceship::ConnectAPI.token
|
272
272
|
api_key = if options[:api_key].nil? && !api_token.nil?
|
@@ -281,12 +281,12 @@ module Deliver
|
|
281
281
|
|
282
282
|
unless api_token.nil?
|
283
283
|
api_token.refresh! if api_token.expired?
|
284
|
-
return FastlaneCore::ItunesTransporter.new(nil, nil, false, nil, api_token.text,
|
284
|
+
return FastlaneCore::ItunesTransporter.new(nil, nil, false, nil, api_token.text, altool_compatible_command: true, api_key: api_key)
|
285
285
|
end
|
286
286
|
|
287
287
|
tunes_client = Spaceship::ConnectAPI.client.tunes_client
|
288
288
|
|
289
|
-
generic_transporter = FastlaneCore::ItunesTransporter.new(options[:username], nil, false, options[:itc_provider],
|
289
|
+
generic_transporter = FastlaneCore::ItunesTransporter.new(options[:username], nil, false, options[:itc_provider], altool_compatible_command: true, api_key: api_key)
|
290
290
|
return generic_transporter unless options[:itc_provider].nil? && tunes_client.teams.count > 1
|
291
291
|
|
292
292
|
begin
|
@@ -294,7 +294,7 @@ module Deliver
|
|
294
294
|
name = team['name']
|
295
295
|
provider_id = generic_transporter.provider_ids[name]
|
296
296
|
UI.verbose("Inferred provider id #{provider_id} for team #{name}.")
|
297
|
-
return FastlaneCore::ItunesTransporter.new(options[:username], nil, false, provider_id,
|
297
|
+
return FastlaneCore::ItunesTransporter.new(options[:username], nil, false, provider_id, altool_compatible_command: true, api_key: api_key)
|
298
298
|
rescue => ex
|
299
299
|
UI.verbose("Couldn't infer a provider short name for team with id #{tunes_client.team_id} automatically: #{ex}. Proceeding without provider short name.")
|
300
300
|
return generic_transporter
|
@@ -7,11 +7,35 @@ module Fastlane
|
|
7
7
|
# Raises an exception and stop the lane execution if the repo is not in a clean state
|
8
8
|
class EnsureGitStatusCleanAction < Action
|
9
9
|
def self.run(params)
|
10
|
+
# Build command
|
10
11
|
if params[:ignored]
|
11
|
-
|
12
|
-
|
12
|
+
ignored_mode = params[:ignored]
|
13
|
+
ignored_mode = 'no' if ignored_mode == 'none'
|
14
|
+
command = "git status --porcelain --ignored='#{ignored_mode}'"
|
13
15
|
else
|
14
|
-
|
16
|
+
command = "git status --porcelain"
|
17
|
+
end
|
18
|
+
|
19
|
+
# Don't log if manually ignoring files as it will emulate output later
|
20
|
+
print_output = params[:ignore_files].nil?
|
21
|
+
repo_status = Actions.sh(command, log: print_output)
|
22
|
+
|
23
|
+
# Manual post processing trying to ignore certain file paths
|
24
|
+
if (ignore_files = params[:ignore_files])
|
25
|
+
repo_status = repo_status.lines.reject do |line|
|
26
|
+
path = line.split(' ').last
|
27
|
+
was_found = ignore_files.include?(path)
|
28
|
+
|
29
|
+
UI.message("Ignoring '#{path}'") if was_found
|
30
|
+
|
31
|
+
was_found
|
32
|
+
end.join("")
|
33
|
+
|
34
|
+
# Emulate the output format of `git status --porcelain`
|
35
|
+
UI.command(command)
|
36
|
+
repo_status.lines.each do |line|
|
37
|
+
UI.message("▸ " + line.chomp.magenta)
|
38
|
+
end
|
15
39
|
end
|
16
40
|
|
17
41
|
repo_clean = repo_status.empty?
|
@@ -74,8 +98,23 @@ module Fastlane
|
|
74
98
|
type: Boolean),
|
75
99
|
FastlaneCore::ConfigItem.new(key: :ignored,
|
76
100
|
env_name: "FL_ENSURE_GIT_STATUS_CLEAN_IGNORED_FILE",
|
77
|
-
description:
|
78
|
-
|
101
|
+
description: [
|
102
|
+
"The handling mode of the ignored files. The available options are: `'traditional'`, `'none'` (default) and `'matching'`.",
|
103
|
+
"Specifying `'none'` to this parameter is the same as not specifying the parameter at all, which means that no ignored file will be used to check if the repo is dirty or not.",
|
104
|
+
"Specifying `'traditional'` or `'matching'` causes some ignored files to be used to check if the repo is dirty or not (more info in the official docs: https://git-scm.com/docs/git-status#Documentation/git-status.txt---ignoredltmodegt)"
|
105
|
+
].join(" "),
|
106
|
+
optional: true,
|
107
|
+
verify_block: proc do |value|
|
108
|
+
mode = value.to_s
|
109
|
+
modes = %w(traditional none matching)
|
110
|
+
|
111
|
+
UI.user_error!("Unsupported mode, must be: #{modes}") unless modes.include?(mode)
|
112
|
+
end),
|
113
|
+
FastlaneCore::ConfigItem.new(key: :ignore_files,
|
114
|
+
env_name: "FL_ENSURE_GIT_STATUS_CLEAN_IGNORE_FILES",
|
115
|
+
description: "Array of files to ignore",
|
116
|
+
optional: true,
|
117
|
+
type: Array)
|
79
118
|
]
|
80
119
|
end
|
81
120
|
|
@@ -4299,7 +4299,8 @@ public func ensureGitBranch(branch: String = "master") {
|
|
4299
4299
|
- parameters:
|
4300
4300
|
- showUncommittedChanges: The flag whether to show uncommitted changes if the repo is dirty
|
4301
4301
|
- showDiff: The flag whether to show the git diff if the repo is dirty
|
4302
|
-
- ignored: The
|
4302
|
+
- ignored: The handling mode of the ignored files. The available options are: `'traditional'`, `'none'` (default) and `'matching'`. Specifying `'none'` to this parameter is the same as not specifying the parameter at all, which means that no ignored file will be used to check if the repo is dirty or not. Specifying `'traditional'` or `'matching'` causes some ignored files to be used to check if the repo is dirty or not (more info in the official docs: https://git-scm.com/docs/git-status#Documentation/git-status.txt---ignoredltmodegt)
|
4303
|
+
- ignoreFiles: Array of files to ignore
|
4303
4304
|
|
4304
4305
|
A sanity check to make sure you are working in a repo that is clean.
|
4305
4306
|
Especially useful to put at the beginning of your Fastfile in the `before_all` block, if some of your other actions will touch your filesystem, do things to your git repo, or just as a general reminder to save your work.
|
@@ -4307,14 +4308,17 @@ public func ensureGitBranch(branch: String = "master") {
|
|
4307
4308
|
*/
|
4308
4309
|
public func ensureGitStatusClean(showUncommittedChanges: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
4309
4310
|
showDiff: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
4310
|
-
ignored: OptionalConfigValue<String?> = .fastlaneDefault(nil)
|
4311
|
+
ignored: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
4312
|
+
ignoreFiles: OptionalConfigValue<[String]?> = .fastlaneDefault(nil))
|
4311
4313
|
{
|
4312
4314
|
let showUncommittedChangesArg = showUncommittedChanges.asRubyArgument(name: "show_uncommitted_changes", type: nil)
|
4313
4315
|
let showDiffArg = showDiff.asRubyArgument(name: "show_diff", type: nil)
|
4314
4316
|
let ignoredArg = ignored.asRubyArgument(name: "ignored", type: nil)
|
4317
|
+
let ignoreFilesArg = ignoreFiles.asRubyArgument(name: "ignore_files", type: nil)
|
4315
4318
|
let array: [RubyCommand.Argument?] = [showUncommittedChangesArg,
|
4316
4319
|
showDiffArg,
|
4317
|
-
ignoredArg
|
4320
|
+
ignoredArg,
|
4321
|
+
ignoreFilesArg]
|
4318
4322
|
let args: [RubyCommand.Argument] = array
|
4319
4323
|
.filter { $0?.value != nil }
|
4320
4324
|
.compactMap { $0 }
|
@@ -6676,6 +6680,7 @@ public func makeChangelogFromJenkins(fallbackChangelog: String = "",
|
|
6676
6680
|
- s3Bucket: Name of the S3 bucket
|
6677
6681
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
6678
6682
|
- gitlabProject: GitLab Project Path (i.e. 'gitlab-org/gitlab')
|
6683
|
+
- gitlabHost: GitLab Host (i.e. 'https://gitlab.com')
|
6679
6684
|
- keychainName: Keychain the items should be imported to
|
6680
6685
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
6681
6686
|
- force: Renew the provisioning profiles every time you run match
|
@@ -6729,6 +6734,7 @@ public func match(type: String = matchfile.type,
|
|
6729
6734
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3Bucket),
|
6730
6735
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.s3ObjectPrefix),
|
6731
6736
|
gitlabProject: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.gitlabProject),
|
6737
|
+
gitlabHost: String = matchfile.gitlabHost,
|
6732
6738
|
keychainName: String = matchfile.keychainName,
|
6733
6739
|
keychainPassword: OptionalConfigValue<String?> = .fastlaneDefault(matchfile.keychainPassword),
|
6734
6740
|
force: OptionalConfigValue<Bool> = .fastlaneDefault(matchfile.force),
|
@@ -6780,6 +6786,7 @@ public func match(type: String = matchfile.type,
|
|
6780
6786
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
6781
6787
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
6782
6788
|
let gitlabProjectArg = gitlabProject.asRubyArgument(name: "gitlab_project", type: nil)
|
6789
|
+
let gitlabHostArg = RubyCommand.Argument(name: "gitlab_host", value: gitlabHost, type: nil)
|
6783
6790
|
let keychainNameArg = RubyCommand.Argument(name: "keychain_name", value: keychainName, type: nil)
|
6784
6791
|
let keychainPasswordArg = keychainPassword.asRubyArgument(name: "keychain_password", type: nil)
|
6785
6792
|
let forceArg = force.asRubyArgument(name: "force", type: nil)
|
@@ -6830,6 +6837,7 @@ public func match(type: String = matchfile.type,
|
|
6830
6837
|
s3BucketArg,
|
6831
6838
|
s3ObjectPrefixArg,
|
6832
6839
|
gitlabProjectArg,
|
6840
|
+
gitlabHostArg,
|
6833
6841
|
keychainNameArg,
|
6834
6842
|
keychainPasswordArg,
|
6835
6843
|
forceArg,
|
@@ -6891,6 +6899,7 @@ public func match(type: String = matchfile.type,
|
|
6891
6899
|
- s3Bucket: Name of the S3 bucket
|
6892
6900
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
6893
6901
|
- gitlabProject: GitLab Project Path (i.e. 'gitlab-org/gitlab')
|
6902
|
+
- gitlabHost: GitLab Host (i.e. 'https://gitlab.com')
|
6894
6903
|
- keychainName: Keychain the items should be imported to
|
6895
6904
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
6896
6905
|
- force: Renew the provisioning profiles every time you run match
|
@@ -6948,6 +6957,7 @@ public func matchNuke(type: String = "development",
|
|
6948
6957
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
6949
6958
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
6950
6959
|
gitlabProject: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
6960
|
+
gitlabHost: String = "https://gitlab.com",
|
6951
6961
|
keychainName: String = "login.keychain",
|
6952
6962
|
keychainPassword: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
6953
6963
|
force: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
@@ -6999,6 +7009,7 @@ public func matchNuke(type: String = "development",
|
|
6999
7009
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
7000
7010
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
7001
7011
|
let gitlabProjectArg = gitlabProject.asRubyArgument(name: "gitlab_project", type: nil)
|
7012
|
+
let gitlabHostArg = RubyCommand.Argument(name: "gitlab_host", value: gitlabHost, type: nil)
|
7002
7013
|
let keychainNameArg = RubyCommand.Argument(name: "keychain_name", value: keychainName, type: nil)
|
7003
7014
|
let keychainPasswordArg = keychainPassword.asRubyArgument(name: "keychain_password", type: nil)
|
7004
7015
|
let forceArg = force.asRubyArgument(name: "force", type: nil)
|
@@ -7049,6 +7060,7 @@ public func matchNuke(type: String = "development",
|
|
7049
7060
|
s3BucketArg,
|
7050
7061
|
s3ObjectPrefixArg,
|
7051
7062
|
gitlabProjectArg,
|
7063
|
+
gitlabHostArg,
|
7052
7064
|
keychainNameArg,
|
7053
7065
|
keychainPasswordArg,
|
7054
7066
|
forceArg,
|
@@ -8704,6 +8716,7 @@ public func rubyVersion() {
|
|
8704
8716
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
8705
8717
|
- slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
|
8706
8718
|
- destination: Use only if you're a pro, use the other options instead
|
8719
|
+
- runRosettaSimulator: Adds arch=x86_64 to the xcodebuild 'destination' argument to run simulator in a Rosetta mode
|
8707
8720
|
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
8708
8721
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
8709
8722
|
- xcodebuildCommand: Allows for override of the default `xcodebuild` command
|
@@ -8786,6 +8799,7 @@ public func rubyVersion() {
|
|
8786
8799
|
slackOnlyOnFailure: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
8787
8800
|
slackDefaultPayloads: OptionalConfigValue<[String]?> = .fastlaneDefault(nil),
|
8788
8801
|
destination: Any? = nil,
|
8802
|
+
runRosettaSimulator: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
8789
8803
|
catalystPlatform: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
8790
8804
|
customReportFileName: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
8791
8805
|
xcodebuildCommand: String = "env NSUnbufferedIO=YES xcodebuild",
|
@@ -8864,6 +8878,7 @@ public func rubyVersion() {
|
|
8864
8878
|
let slackOnlyOnFailureArg = slackOnlyOnFailure.asRubyArgument(name: "slack_only_on_failure", type: nil)
|
8865
8879
|
let slackDefaultPayloadsArg = slackDefaultPayloads.asRubyArgument(name: "slack_default_payloads", type: nil)
|
8866
8880
|
let destinationArg = RubyCommand.Argument(name: "destination", value: destination, type: nil)
|
8881
|
+
let runRosettaSimulatorArg = runRosettaSimulator.asRubyArgument(name: "run_rosetta_simulator", type: nil)
|
8867
8882
|
let catalystPlatformArg = catalystPlatform.asRubyArgument(name: "catalyst_platform", type: nil)
|
8868
8883
|
let customReportFileNameArg = customReportFileName.asRubyArgument(name: "custom_report_file_name", type: nil)
|
8869
8884
|
let xcodebuildCommandArg = RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand, type: nil)
|
@@ -8941,6 +8956,7 @@ public func rubyVersion() {
|
|
8941
8956
|
slackOnlyOnFailureArg,
|
8942
8957
|
slackDefaultPayloadsArg,
|
8943
8958
|
destinationArg,
|
8959
|
+
runRosettaSimulatorArg,
|
8944
8960
|
catalystPlatformArg,
|
8945
8961
|
customReportFileNameArg,
|
8946
8962
|
xcodebuildCommandArg,
|
@@ -9131,6 +9147,7 @@ public func say(text: [String],
|
|
9131
9147
|
- slackOnlyOnFailure: Only post on Slack if the tests fail
|
9132
9148
|
- slackDefaultPayloads: Specifies default payloads to include in Slack messages. For more info visit https://docs.fastlane.tools/actions/slack
|
9133
9149
|
- destination: Use only if you're a pro, use the other options instead
|
9150
|
+
- runRosettaSimulator: Adds arch=x86_64 to the xcodebuild 'destination' argument to run simulator in a Rosetta mode
|
9134
9151
|
- catalystPlatform: Platform to build when using a Catalyst enabled app. Valid values are: ios, macos
|
9135
9152
|
- customReportFileName: **DEPRECATED!** Use `--output_files` instead - Sets custom full report file name when generating a single report
|
9136
9153
|
- xcodebuildCommand: Allows for override of the default `xcodebuild` command
|
@@ -9213,6 +9230,7 @@ public func say(text: [String],
|
|
9213
9230
|
slackOnlyOnFailure: OptionalConfigValue<Bool> = .fastlaneDefault(scanfile.slackOnlyOnFailure),
|
9214
9231
|
slackDefaultPayloads: OptionalConfigValue<[String]?> = .fastlaneDefault(scanfile.slackDefaultPayloads),
|
9215
9232
|
destination: Any? = scanfile.destination,
|
9233
|
+
runRosettaSimulator: OptionalConfigValue<Bool> = .fastlaneDefault(scanfile.runRosettaSimulator),
|
9216
9234
|
catalystPlatform: OptionalConfigValue<String?> = .fastlaneDefault(scanfile.catalystPlatform),
|
9217
9235
|
customReportFileName: OptionalConfigValue<String?> = .fastlaneDefault(scanfile.customReportFileName),
|
9218
9236
|
xcodebuildCommand: String = scanfile.xcodebuildCommand,
|
@@ -9291,6 +9309,7 @@ public func say(text: [String],
|
|
9291
9309
|
let slackOnlyOnFailureArg = slackOnlyOnFailure.asRubyArgument(name: "slack_only_on_failure", type: nil)
|
9292
9310
|
let slackDefaultPayloadsArg = slackDefaultPayloads.asRubyArgument(name: "slack_default_payloads", type: nil)
|
9293
9311
|
let destinationArg = RubyCommand.Argument(name: "destination", value: destination, type: nil)
|
9312
|
+
let runRosettaSimulatorArg = runRosettaSimulator.asRubyArgument(name: "run_rosetta_simulator", type: nil)
|
9294
9313
|
let catalystPlatformArg = catalystPlatform.asRubyArgument(name: "catalyst_platform", type: nil)
|
9295
9314
|
let customReportFileNameArg = customReportFileName.asRubyArgument(name: "custom_report_file_name", type: nil)
|
9296
9315
|
let xcodebuildCommandArg = RubyCommand.Argument(name: "xcodebuild_command", value: xcodebuildCommand, type: nil)
|
@@ -9368,6 +9387,7 @@ public func say(text: [String],
|
|
9368
9387
|
slackOnlyOnFailureArg,
|
9369
9388
|
slackDefaultPayloadsArg,
|
9370
9389
|
destinationArg,
|
9390
|
+
runRosettaSimulatorArg,
|
9371
9391
|
catalystPlatformArg,
|
9372
9392
|
customReportFileNameArg,
|
9373
9393
|
xcodebuildCommandArg,
|
@@ -11117,6 +11137,7 @@ public func swiftlint(mode: String = "lint",
|
|
11117
11137
|
- s3Bucket: Name of the S3 bucket
|
11118
11138
|
- s3ObjectPrefix: Prefix to be used on all objects uploaded to S3
|
11119
11139
|
- gitlabProject: GitLab Project Path (i.e. 'gitlab-org/gitlab')
|
11140
|
+
- gitlabHost: GitLab Host (i.e. 'https://gitlab.com')
|
11120
11141
|
- keychainName: Keychain the items should be imported to
|
11121
11142
|
- keychainPassword: This might be required the first time you access certificates on a new mac. For the login/default keychain this is your macOS account password
|
11122
11143
|
- force: Renew the provisioning profiles every time you run match
|
@@ -11170,6 +11191,7 @@ public func syncCodeSigning(type: String = "development",
|
|
11170
11191
|
s3Bucket: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11171
11192
|
s3ObjectPrefix: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11172
11193
|
gitlabProject: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11194
|
+
gitlabHost: String = "https://gitlab.com",
|
11173
11195
|
keychainName: String = "login.keychain",
|
11174
11196
|
keychainPassword: OptionalConfigValue<String?> = .fastlaneDefault(nil),
|
11175
11197
|
force: OptionalConfigValue<Bool> = .fastlaneDefault(false),
|
@@ -11221,6 +11243,7 @@ public func syncCodeSigning(type: String = "development",
|
|
11221
11243
|
let s3BucketArg = s3Bucket.asRubyArgument(name: "s3_bucket", type: nil)
|
11222
11244
|
let s3ObjectPrefixArg = s3ObjectPrefix.asRubyArgument(name: "s3_object_prefix", type: nil)
|
11223
11245
|
let gitlabProjectArg = gitlabProject.asRubyArgument(name: "gitlab_project", type: nil)
|
11246
|
+
let gitlabHostArg = RubyCommand.Argument(name: "gitlab_host", value: gitlabHost, type: nil)
|
11224
11247
|
let keychainNameArg = RubyCommand.Argument(name: "keychain_name", value: keychainName, type: nil)
|
11225
11248
|
let keychainPasswordArg = keychainPassword.asRubyArgument(name: "keychain_password", type: nil)
|
11226
11249
|
let forceArg = force.asRubyArgument(name: "force", type: nil)
|
@@ -11271,6 +11294,7 @@ public func syncCodeSigning(type: String = "development",
|
|
11271
11294
|
s3BucketArg,
|
11272
11295
|
s3ObjectPrefixArg,
|
11273
11296
|
gitlabProjectArg,
|
11297
|
+
gitlabHostArg,
|
11274
11298
|
keychainNameArg,
|
11275
11299
|
keychainPasswordArg,
|
11276
11300
|
forceArg,
|
@@ -13573,4 +13597,4 @@ public let snapshotfile: Snapshotfile = .init()
|
|
13573
13597
|
|
13574
13598
|
// Please don't remove the lines below
|
13575
13599
|
// They are used to detect outdated files
|
13576
|
-
// FastlaneRunnerAPIVersion [0.9.
|
13600
|
+
// FastlaneRunnerAPIVersion [0.9.169]
|