fastlane 2.222.0 → 2.223.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.
- checksums.yaml +4 -4
- data/README.md +98 -98
- data/deliver/lib/deliver/runner.rb +9 -0
- data/fastlane/lib/fastlane/actions/changelog_from_git_commits.rb +7 -3
- data/fastlane/lib/fastlane/actions/slack.rb +9 -2
- data/fastlane/lib/fastlane/actions/testfairy.rb +9 -1
- data/fastlane/lib/fastlane/fast_file.rb +5 -1
- data/fastlane/lib/fastlane/helper/git_helper.rb +4 -2
- data/fastlane/lib/fastlane/notification/slack.rb +3 -2
- 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 +78 -18
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +5 -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 +5 -1
- data/fastlane/swift/formatting/Brewfile.lock.json +23 -18
- data/fastlane/swift/formatting/Rakefile +1 -0
- data/fastlane_core/lib/fastlane_core/build_watcher.rb +5 -0
- data/fastlane_core/lib/fastlane_core/project.rb +1 -0
- data/gym/lib/gym/options.rb +10 -1
- data/match/lib/match/change_password.rb +2 -1
- data/match/lib/match/encryption/encryption.rb +2 -2
- data/match/lib/match/encryption/openssl.rb +10 -5
- data/match/lib/match/importer.rb +2 -1
- data/match/lib/match/nuke.rb +2 -1
- data/match/lib/match/options.rb +5 -0
- data/match/lib/match/runner.rb +2 -1
- data/pilot/lib/pilot/build_manager.rb +9 -0
- data/scan/lib/scan/module.rb +1 -1
- data/scan/lib/scan/options.rb +10 -1
- data/snapshot/lib/snapshot/options.rb +9 -0
- metadata +20 -20
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 14274b2abc21a737dad175e4f6a78ebd86979cb84c94e1971b5002d348736bc0
|
|
4
|
+
data.tar.gz: f5ce93eeaa569f021b7c3d6ca80e83e202b071a6faf088ed17fa4ebf05bb4a6b
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: d796b0ee770f953882fe861c1602583fdba65c281db608b5d2b3d9d87f88ee0d93e0d8ae3f9085eb1c333c6f95a6bdcda43a862cfca769adab01b286c7a443f1
|
|
7
|
+
data.tar.gz: b46b75471e5d902d2a20143ca8e3be564a1cbb793a0951f6c2c6f4e22e1bd66af7f69d5003338f510d55afaf5617443e018ca4678e4b7cce75ca8eb4c1691180
|
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='danielle-tomlinson'>
|
|
39
|
+
<a href='https://github.com/endocrimes'>
|
|
40
|
+
<img src='https://github.com/endocrimes.png' width='140px;'>
|
|
41
41
|
</a>
|
|
42
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
42
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</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='helmut-januschka'>
|
|
51
51
|
<a href='https://github.com/hjanuschka'>
|
|
@@ -53,37 +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/hjanuschka'>Helmut Januschka</a></h4>
|
|
55
55
|
</td>
|
|
56
|
-
<td id='
|
|
57
|
-
<a href='https://github.com/
|
|
58
|
-
<img src='https://github.com/
|
|
56
|
+
<td id='aaron-brager'>
|
|
57
|
+
<a href='https://github.com/getaaron'>
|
|
58
|
+
<img src='https://github.com/getaaron.png' width='140px;'>
|
|
59
59
|
</a>
|
|
60
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
60
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
61
61
|
</td>
|
|
62
|
-
<td id='
|
|
63
|
-
<a href='https://github.com/
|
|
64
|
-
<img src='https://github.com/
|
|
62
|
+
<td id='iulian-onofrei'>
|
|
63
|
+
<a href='https://github.com/revolter'>
|
|
64
|
+
<img src='https://github.com/revolter.png' width='140px;'>
|
|
65
65
|
</a>
|
|
66
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
66
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</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/
|
|
73
|
-
</a>
|
|
74
|
-
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
75
|
-
</td>
|
|
76
|
-
<td id='jorge-revuelta-h'>
|
|
77
|
-
<a href='https://github.com/minuscorp'>
|
|
78
|
-
<img src='https://github.com/minuscorp.png' width='140px;'>
|
|
70
|
+
<td id='matthew-ellis'>
|
|
71
|
+
<a href='https://github.com/matthewellis'>
|
|
72
|
+
<img src='https://github.com/matthewellis.png' width='140px;'>
|
|
79
73
|
</a>
|
|
80
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
74
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
81
75
|
</td>
|
|
82
|
-
<td id='
|
|
83
|
-
<a href='https://github.com/
|
|
84
|
-
<img src='https://github.com/
|
|
76
|
+
<td id='max-ott'>
|
|
77
|
+
<a href='https://github.com/max-ott'>
|
|
78
|
+
<img src='https://github.com/max-ott.png' width='140px;'>
|
|
85
79
|
</a>
|
|
86
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
80
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
87
81
|
</td>
|
|
88
82
|
<td id='roger-oba'>
|
|
89
83
|
<a href='https://github.com/rogerluan'>
|
|
@@ -91,115 +85,121 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
91
85
|
</a>
|
|
92
86
|
<h4 align='center'><a href='https://twitter.com/rogerluan_'>Roger Oba</a></h4>
|
|
93
87
|
</td>
|
|
94
|
-
<td id='
|
|
95
|
-
<a href='https://github.com/
|
|
96
|
-
<img src='https://github.com/
|
|
88
|
+
<td id='olivier-halligon'>
|
|
89
|
+
<a href='https://github.com/AliSoftware'>
|
|
90
|
+
<img src='https://github.com/AliSoftware.png' width='140px;'>
|
|
97
91
|
</a>
|
|
98
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
92
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
93
|
+
</td>
|
|
94
|
+
<td id='manish-rathi'>
|
|
95
|
+
<a href='https://github.com/crazymanish'>
|
|
96
|
+
<img src='https://github.com/crazymanish.png' width='140px;'>
|
|
97
|
+
</a>
|
|
98
|
+
<h4 align='center'><a href='https://twitter.com/iammanishrathi'>Manish Rathi</a></h4>
|
|
99
99
|
</td>
|
|
100
100
|
</tr>
|
|
101
101
|
<tr>
|
|
102
|
-
<td id='
|
|
103
|
-
<a href='https://github.com/
|
|
104
|
-
<img src='https://github.com/
|
|
102
|
+
<td id='felix-krause'>
|
|
103
|
+
<a href='https://github.com/KrauseFx'>
|
|
104
|
+
<img src='https://github.com/KrauseFx.png' width='140px;'>
|
|
105
105
|
</a>
|
|
106
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
106
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
|
107
107
|
</td>
|
|
108
|
-
<td id='
|
|
109
|
-
<a href='https://github.com/
|
|
110
|
-
<img src='https://github.com/
|
|
108
|
+
<td id='josh-holtz'>
|
|
109
|
+
<a href='https://github.com/joshdholtz'>
|
|
110
|
+
<img src='https://github.com/joshdholtz.png' width='140px;'>
|
|
111
111
|
</a>
|
|
112
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
112
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
113
113
|
</td>
|
|
114
|
-
<td id='
|
|
115
|
-
<a href='https://github.com/
|
|
116
|
-
<img src='https://github.com/
|
|
114
|
+
<td id='łukasz-grabowski'>
|
|
115
|
+
<a href='https://github.com/lucgrabowski'>
|
|
116
|
+
<img src='https://github.com/lucgrabowski.png' width='140px;'>
|
|
117
117
|
</a>
|
|
118
|
-
<h4 align='center'
|
|
118
|
+
<h4 align='center'>Łukasz Grabowski</h4>
|
|
119
119
|
</td>
|
|
120
|
-
<td id='
|
|
121
|
-
<a href='https://github.com/
|
|
122
|
-
<img src='https://github.com/
|
|
120
|
+
<td id='fumiya-nakamura'>
|
|
121
|
+
<a href='https://github.com/nafu'>
|
|
122
|
+
<img src='https://github.com/nafu.png' width='140px;'>
|
|
123
123
|
</a>
|
|
124
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
124
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
125
125
|
</td>
|
|
126
|
-
<td id='
|
|
127
|
-
<a href='https://github.com/
|
|
128
|
-
<img src='https://github.com/
|
|
126
|
+
<td id='maksym-grebenets'>
|
|
127
|
+
<a href='https://github.com/mgrebenets'>
|
|
128
|
+
<img src='https://github.com/mgrebenets.png' width='140px;'>
|
|
129
129
|
</a>
|
|
130
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
130
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
131
131
|
</td>
|
|
132
132
|
</tr>
|
|
133
133
|
<tr>
|
|
134
|
-
<td id='jimmy-dee'>
|
|
135
|
-
<a href='https://github.com/jdee'>
|
|
136
|
-
<img src='https://github.com/jdee.png' width='140px;'>
|
|
137
|
-
</a>
|
|
138
|
-
<h4 align='center'>Jimmy Dee</h4>
|
|
139
|
-
</td>
|
|
140
|
-
<td id='satoshi-namai'>
|
|
141
|
-
<a href='https://github.com/ainame'>
|
|
142
|
-
<img src='https://github.com/ainame.png' width='140px;'>
|
|
143
|
-
</a>
|
|
144
|
-
<h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</a></h4>
|
|
145
|
-
</td>
|
|
146
134
|
<td id='luka-mirosevic'>
|
|
147
135
|
<a href='https://github.com/lmirosevic'>
|
|
148
136
|
<img src='https://github.com/lmirosevic.png' width='140px;'>
|
|
149
137
|
</a>
|
|
150
138
|
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
151
139
|
</td>
|
|
152
|
-
<td id='
|
|
153
|
-
<a href='https://github.com/
|
|
154
|
-
<img src='https://github.com/
|
|
140
|
+
<td id='jérôme-lacoste'>
|
|
141
|
+
<a href='https://github.com/lacostej'>
|
|
142
|
+
<img src='https://github.com/lacostej.png' width='140px;'>
|
|
155
143
|
</a>
|
|
156
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
144
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
157
145
|
</td>
|
|
158
|
-
<td id='
|
|
159
|
-
<a href='https://github.com/
|
|
160
|
-
<img src='https://github.com/
|
|
146
|
+
<td id='andrew-mcburney'>
|
|
147
|
+
<a href='https://github.com/armcburney'>
|
|
148
|
+
<img src='https://github.com/armcburney.png' width='140px;'>
|
|
161
149
|
</a>
|
|
162
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
150
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
151
|
+
</td>
|
|
152
|
+
<td id='stefan-natchev'>
|
|
153
|
+
<a href='https://github.com/snatchev'>
|
|
154
|
+
<img src='https://github.com/snatchev.png' width='140px;'>
|
|
155
|
+
</a>
|
|
156
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
157
|
+
</td>
|
|
158
|
+
<td id='manu-wallner'>
|
|
159
|
+
<a href='https://github.com/milch'>
|
|
160
|
+
<img src='https://github.com/milch.png' width='140px;'>
|
|
161
|
+
</a>
|
|
162
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</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='daniel-jankowski'>
|
|
167
|
+
<a href='https://github.com/mollyIV'>
|
|
168
|
+
<img src='https://github.com/mollyIV.png' width='140px;'>
|
|
169
169
|
</a>
|
|
170
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
170
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
|
171
171
|
</td>
|
|
172
|
-
<td id='
|
|
173
|
-
<a href='https://github.com/
|
|
174
|
-
<img src='https://github.com/
|
|
172
|
+
<td id='jorge-revuelta-h'>
|
|
173
|
+
<a href='https://github.com/minuscorp'>
|
|
174
|
+
<img src='https://github.com/minuscorp.png' width='140px;'>
|
|
175
175
|
</a>
|
|
176
|
-
<h4 align='center'
|
|
176
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
177
177
|
</td>
|
|
178
|
-
<td id='
|
|
179
|
-
<a href='https://github.com/
|
|
180
|
-
<img src='https://github.com/
|
|
178
|
+
<td id='joshua-liebowitz'>
|
|
179
|
+
<a href='https://github.com/taquitos'>
|
|
180
|
+
<img src='https://github.com/taquitos.png' width='140px;'>
|
|
181
181
|
</a>
|
|
182
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
182
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
183
183
|
</td>
|
|
184
|
-
<td id='
|
|
185
|
-
<a href='https://github.com/
|
|
186
|
-
<img src='https://github.com/
|
|
184
|
+
<td id='jimmy-dee'>
|
|
185
|
+
<a href='https://github.com/jdee'>
|
|
186
|
+
<img src='https://github.com/jdee.png' width='140px;'>
|
|
187
187
|
</a>
|
|
188
|
-
<h4 align='center'
|
|
188
|
+
<h4 align='center'>Jimmy Dee</h4>
|
|
189
189
|
</td>
|
|
190
|
-
<td id='
|
|
191
|
-
<a href='https://github.com/
|
|
192
|
-
<img src='https://github.com/
|
|
190
|
+
<td id='satoshi-namai'>
|
|
191
|
+
<a href='https://github.com/ainame'>
|
|
192
|
+
<img src='https://github.com/ainame.png' width='140px;'>
|
|
193
193
|
</a>
|
|
194
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
194
|
+
<h4 align='center'><a href='https://twitter.com/ainame'>Satoshi Namai</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='kohki-miki'>
|
|
199
|
+
<a href='https://github.com/giginet'>
|
|
200
|
+
<img src='https://github.com/giginet.png' width='140px;'>
|
|
201
201
|
</a>
|
|
202
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
202
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
203
203
|
</td>
|
|
204
204
|
</table>
|
|
205
205
|
|
|
@@ -264,6 +264,7 @@ module Deliver
|
|
|
264
264
|
private
|
|
265
265
|
|
|
266
266
|
# If App Store Connect API token, use token.
|
|
267
|
+
# If api_key is specified and it is an Individual API Key, don't use token but use username.
|
|
267
268
|
# If itc_provider was explicitly specified, use it.
|
|
268
269
|
# If there are multiple teams, infer the provider from the selected team name.
|
|
269
270
|
# If there are fewer than two teams, don't infer the provider.
|
|
@@ -280,6 +281,14 @@ module Deliver
|
|
|
280
281
|
api_key
|
|
281
282
|
end
|
|
282
283
|
|
|
284
|
+
# Currently no kind of transporters accept an Individual API Key. Use username and app-specific password instead.
|
|
285
|
+
# See https://github.com/fastlane/fastlane/issues/22115
|
|
286
|
+
is_individual_key = !api_key.nil? && api_key[:issuer_id].nil?
|
|
287
|
+
if is_individual_key
|
|
288
|
+
api_key = nil
|
|
289
|
+
api_token = nil
|
|
290
|
+
end
|
|
291
|
+
|
|
283
292
|
unless api_token.nil?
|
|
284
293
|
api_token.refresh! if api_token.expired?
|
|
285
294
|
return FastlaneCore::ItunesTransporter.new(nil, nil, false, nil, api_token.text, altool_compatible_command: true, api_key: api_key)
|
|
@@ -37,9 +37,9 @@ module Fastlane
|
|
|
37
37
|
|
|
38
38
|
Dir.chdir(params[:path]) do
|
|
39
39
|
if params[:commits_count]
|
|
40
|
-
changelog = Actions.git_log_last_commits(params[:pretty], params[:commits_count], merge_commit_filtering, params[:date_format], params[:ancestry_path])
|
|
40
|
+
changelog = Actions.git_log_last_commits(params[:pretty], params[:commits_count], merge_commit_filtering, params[:date_format], params[:ancestry_path], params[:app_path])
|
|
41
41
|
else
|
|
42
|
-
changelog = Actions.git_log_between(params[:pretty], from, to, merge_commit_filtering, params[:date_format], params[:ancestry_path])
|
|
42
|
+
changelog = Actions.git_log_between(params[:pretty], from, to, merge_commit_filtering, params[:date_format], params[:ancestry_path], params[:app_path])
|
|
43
43
|
end
|
|
44
44
|
|
|
45
45
|
changelog = changelog.gsub("\n\n", "\n") if changelog # as there are duplicate newlines
|
|
@@ -147,7 +147,11 @@ module Fastlane
|
|
|
147
147
|
verify_block: proc do |value|
|
|
148
148
|
matches_option = GIT_MERGE_COMMIT_FILTERING_OPTIONS.any? { |opt| opt.to_s == value }
|
|
149
149
|
UI.user_error!("Valid values for :merge_commit_filtering are #{GIT_MERGE_COMMIT_FILTERING_OPTIONS.map { |o| "'#{o}'" }.join(', ')}") unless matches_option
|
|
150
|
-
end)
|
|
150
|
+
end),
|
|
151
|
+
FastlaneCore::ConfigItem.new(key: :app_path,
|
|
152
|
+
env_name: 'FL_CHANGELOG_FROM_GIT_COMMITS_APP_PATH',
|
|
153
|
+
description: "Scopes the changelog to a specific subdirectory of the repository",
|
|
154
|
+
optional: true)
|
|
151
155
|
]
|
|
152
156
|
end
|
|
153
157
|
|
|
@@ -27,6 +27,7 @@ module Fastlane
|
|
|
27
27
|
slack_attachment = self.class.generate_slack_attachments(options)
|
|
28
28
|
link_names = options[:link_names]
|
|
29
29
|
icon_url = options[:use_webhook_configured_username_and_icon] ? nil : options[:icon_url]
|
|
30
|
+
icon_emoji = options[:use_webhook_configured_username_and_icon] ? nil : options[:icon_emoji]
|
|
30
31
|
|
|
31
32
|
post_message(
|
|
32
33
|
channel: channel,
|
|
@@ -34,16 +35,18 @@ module Fastlane
|
|
|
34
35
|
attachments: [slack_attachment],
|
|
35
36
|
link_names: link_names,
|
|
36
37
|
icon_url: icon_url,
|
|
38
|
+
icon_emoji: icon_emoji,
|
|
37
39
|
fail_on_error: options[:fail_on_error]
|
|
38
40
|
)
|
|
39
41
|
end
|
|
40
42
|
|
|
41
|
-
def post_message(channel:, username:, attachments:, link_names:, icon_url:, fail_on_error:)
|
|
43
|
+
def post_message(channel:, username:, attachments:, link_names:, icon_url:, icon_emoji:, fail_on_error:)
|
|
42
44
|
@notifier.post_to_legacy_incoming_webhook(
|
|
43
45
|
channel: channel,
|
|
44
46
|
username: username,
|
|
45
47
|
link_names: link_names,
|
|
46
48
|
icon_url: icon_url,
|
|
49
|
+
icon_emoji: icon_emoji,
|
|
47
50
|
attachments: attachments
|
|
48
51
|
)
|
|
49
52
|
UI.success('Successfully sent Slack notification')
|
|
@@ -211,9 +214,13 @@ module Fastlane
|
|
|
211
214
|
optional: true),
|
|
212
215
|
FastlaneCore::ConfigItem.new(key: :icon_url,
|
|
213
216
|
env_name: "FL_SLACK_ICON_URL",
|
|
214
|
-
description: "Overrides the webhook's image property if use_webhook_configured_username_and_icon is false",
|
|
217
|
+
description: "Specifies a URL of an image to use as the photo of the message. Overrides the webhook's image property if use_webhook_configured_username_and_icon is false",
|
|
215
218
|
default_value: "https://fastlane.tools/assets/img/fastlane_icon.png",
|
|
216
219
|
optional: true),
|
|
220
|
+
FastlaneCore::ConfigItem.new(key: :icon_emoji,
|
|
221
|
+
env_name: "FL_SLACK_ICON_EMOJI",
|
|
222
|
+
description: "Specifies an emoji (using colon shortcodes, eg. :white_check_mark:) to use as the photo of the message. Overrides the webhook's image property if use_webhook_configured_username_and_icon is false. This parameter takes precedence over icon_url",
|
|
223
|
+
optional: true),
|
|
217
224
|
FastlaneCore::ConfigItem.new(key: :payload,
|
|
218
225
|
env_name: "FL_SLACK_PAYLOAD",
|
|
219
226
|
description: "Add additional information to this post. payload must be a hash containing any key with any value",
|
|
@@ -96,6 +96,8 @@ module Fastlane
|
|
|
96
96
|
[key, options_to_client.call(value).join(',')]
|
|
97
97
|
when :custom
|
|
98
98
|
[key, value]
|
|
99
|
+
when :tags
|
|
100
|
+
[key, value.join(',')]
|
|
99
101
|
else
|
|
100
102
|
UI.user_error!("Unknown parameter: #{key}")
|
|
101
103
|
end
|
|
@@ -241,7 +243,13 @@ module Fastlane
|
|
|
241
243
|
env_name: "FL_TESTFAIRY_TIMEOUT",
|
|
242
244
|
description: "Request timeout in seconds",
|
|
243
245
|
type: Integer,
|
|
244
|
-
optional: true)
|
|
246
|
+
optional: true),
|
|
247
|
+
FastlaneCore::ConfigItem.new(key: :tags,
|
|
248
|
+
optional: true,
|
|
249
|
+
env_name: "FL_TESTFAIRY_TAGS",
|
|
250
|
+
description: "Custom tags that can be used to organize your builds",
|
|
251
|
+
type: Array,
|
|
252
|
+
default_value: [])
|
|
245
253
|
]
|
|
246
254
|
end
|
|
247
255
|
|
|
@@ -345,7 +345,11 @@ module Fastlane
|
|
|
345
345
|
# Update the repo if it's eligible for caching but the version isn't specified
|
|
346
346
|
UI.message("Fetching remote git branches and updating git repo...")
|
|
347
347
|
Helper.with_env_values('GIT_TERMINAL_PROMPT' => '0') do
|
|
348
|
-
|
|
348
|
+
command = "cd #{clone_folder.shellescape} && git fetch --all --quiet && git checkout #{checkout_param.shellescape} #{checkout_path} && git reset --hard"
|
|
349
|
+
# Check if checked out "branch" is actually a branch or a tag
|
|
350
|
+
current_branch = Actions.sh("cd #{clone_folder.shellescape} && git rev-parse --abbrev-ref HEAD")
|
|
351
|
+
command << " && git rebase" unless current_branch.strip.eql?("HEAD")
|
|
352
|
+
Actions.sh(command)
|
|
349
353
|
end
|
|
350
354
|
else
|
|
351
355
|
begin
|
|
@@ -9,13 +9,14 @@ module Fastlane
|
|
|
9
9
|
end.freeze
|
|
10
10
|
end
|
|
11
11
|
|
|
12
|
-
def self.git_log_between(pretty_format, from, to, merge_commit_filtering, date_format = nil, ancestry_path)
|
|
12
|
+
def self.git_log_between(pretty_format, from, to, merge_commit_filtering, date_format = nil, ancestry_path, app_path)
|
|
13
13
|
command = %w(git log)
|
|
14
14
|
command << "--pretty=#{pretty_format}"
|
|
15
15
|
command << "--date=#{date_format}" if date_format
|
|
16
16
|
command << '--ancestry-path' if ancestry_path
|
|
17
17
|
command << "#{from}...#{to}"
|
|
18
18
|
command << git_log_merge_commit_filtering_option(merge_commit_filtering)
|
|
19
|
+
command << app_path if app_path
|
|
19
20
|
# "*command" syntax expands "command" array into variable arguments, which
|
|
20
21
|
# will then be individually shell-escaped by Actions.sh.
|
|
21
22
|
Actions.sh(*command.compact, log: false).chomp
|
|
@@ -23,13 +24,14 @@ module Fastlane
|
|
|
23
24
|
nil
|
|
24
25
|
end
|
|
25
26
|
|
|
26
|
-
def self.git_log_last_commits(pretty_format, commit_count, merge_commit_filtering, date_format = nil, ancestry_path)
|
|
27
|
+
def self.git_log_last_commits(pretty_format, commit_count, merge_commit_filtering, date_format = nil, ancestry_path, app_path)
|
|
27
28
|
command = %w(git log)
|
|
28
29
|
command << "--pretty=#{pretty_format}"
|
|
29
30
|
command << "--date=#{date_format}" if date_format
|
|
30
31
|
command << '--ancestry-path' if ancestry_path
|
|
31
32
|
command << '-n' << commit_count.to_s
|
|
32
33
|
command << git_log_merge_commit_filtering_option(merge_commit_filtering)
|
|
34
|
+
command << app_path if app_path
|
|
33
35
|
Actions.sh(*command.compact, log: false).chomp
|
|
34
36
|
rescue
|
|
35
37
|
nil
|
|
@@ -8,16 +8,17 @@ module Fastlane
|
|
|
8
8
|
end
|
|
9
9
|
end
|
|
10
10
|
|
|
11
|
-
# Overriding channel, icon_url and username is only supported in legacy incoming webhook.
|
|
11
|
+
# Overriding channel, icon_url, icon_emoji and username is only supported in legacy incoming webhook.
|
|
12
12
|
# Also note that the use of attachments has been discouraged by Slack, in favor of Block Kit.
|
|
13
13
|
# https://api.slack.com/legacy/custom-integrations/messaging/webhooks
|
|
14
|
-
def post_to_legacy_incoming_webhook(channel:, username:, attachments:, link_names:, icon_url:)
|
|
14
|
+
def post_to_legacy_incoming_webhook(channel:, username:, attachments:, link_names:, icon_url:, icon_emoji:)
|
|
15
15
|
@client.post(@webhook_url) do |request|
|
|
16
16
|
request.headers['Content-Type'] = 'application/json'
|
|
17
17
|
request.body = {
|
|
18
18
|
channel: channel,
|
|
19
19
|
username: username,
|
|
20
20
|
icon_url: icon_url,
|
|
21
|
+
icon_emoji: icon_emoji,
|
|
21
22
|
attachments: attachments,
|
|
22
23
|
link_names: link_names
|
|
23
24
|
}.to_json
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
module Fastlane
|
|
2
|
-
VERSION = '2.
|
|
2
|
+
VERSION = '2.223.1'.freeze
|
|
3
3
|
SUMMARY = "The easiest way to build and release mobile apps.".freeze
|
|
4
4
|
DESCRIPTION = "The easiest way to automate beta deployments and releases for your iOS and Android apps".freeze
|
|
5
5
|
MINIMUM_XCODE_RELEASE = "7.0".freeze
|