fastlane 2.150.2 → 2.152.0
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 +84 -84
- data/deliver/lib/deliver/.upload_metadata.rb.swp +0 -0
- data/deliver/lib/deliver/app_screenshot.rb +4 -4
- data/deliver/lib/deliver/download_screenshots.rb +35 -28
- data/deliver/lib/deliver/options.rb +8 -2
- data/deliver/lib/deliver/submit_for_review.rb +10 -10
- data/deliver/lib/deliver/upload_metadata.rb +9 -12
- data/deliver/lib/deliver/upload_screenshots.rb +1 -1
- data/fastlane/lib/fastlane/actions/docs/upload_to_testflight.md +3 -0
- data/fastlane/lib/fastlane/actions/git_branch.rb +4 -1
- data/fastlane/lib/fastlane/actions/notarize.rb +13 -3
- data/fastlane/lib/fastlane/actions/pod_push.rb +10 -1
- data/fastlane/lib/fastlane/actions/resign.rb +1 -1
- data/fastlane/lib/fastlane/actions/setup_ci.rb +5 -0
- data/fastlane/lib/fastlane/actions/setup_circle_ci.rb +1 -1
- data/fastlane/lib/fastlane/actions/setup_travis.rb +1 -1
- data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +10 -2
- data/fastlane/lib/fastlane/actions/upload_to_testflight.rb +11 -3
- data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
- data/fastlane/lib/fastlane/helper/s3_client_helper.rb +28 -11
- data/fastlane/lib/fastlane/server/socket_server.rb +7 -1
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +1 -1
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Actions.swift +1 -1
- data/fastlane/swift/ArgumentProcessor.swift +24 -24
- data/fastlane/swift/ControlCommand.swift +3 -3
- data/fastlane/swift/Deliverfile.swift +4 -8
- data/fastlane/swift/DeliverfileProtocol.swift +181 -182
- data/fastlane/swift/Fastlane.swift +2825 -2805
- data/fastlane/swift/Gymfile.swift +4 -8
- data/fastlane/swift/GymfileProtocol.swift +133 -134
- data/fastlane/swift/LaneFileProtocol.swift +17 -17
- data/fastlane/swift/Matchfile.swift +4 -8
- data/fastlane/swift/MatchfileProtocol.swift +115 -112
- data/fastlane/swift/Plugins.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +4 -8
- data/fastlane/swift/PrecheckfileProtocol.swift +22 -23
- data/fastlane/swift/RubyCommand.swift +34 -37
- data/fastlane/swift/RubyCommandable.swift +3 -1
- data/fastlane/swift/Runner.swift +76 -69
- data/fastlane/swift/Scanfile.swift +4 -8
- data/fastlane/swift/ScanfileProtocol.swift +190 -191
- data/fastlane/swift/Screengrabfile.swift +4 -8
- data/fastlane/swift/ScreengrabfileProtocol.swift +67 -68
- data/fastlane/swift/Snapshotfile.swift +4 -8
- data/fastlane/swift/SnapshotfileProtocol.swift +127 -128
- data/fastlane/swift/SocketClient.swift +84 -90
- data/fastlane/swift/SocketResponse.swift +14 -14
- data/fastlane/swift/formatting/Brewfile +1 -0
- data/fastlane/swift/formatting/Brewfile.lock.json +39 -0
- data/fastlane/swift/formatting/Rakefile +18 -0
- data/fastlane/swift/main.swift +5 -6
- data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +21 -10
- data/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb +1 -1
- data/match/lib/assets/READMETemplate.md +5 -2
- data/match/lib/match/options.rb +4 -0
- data/match/lib/match/runner.rb +5 -4
- data/match/lib/match/storage/git_storage.rb +1 -1
- data/match/lib/match/storage/s3_storage.rb +25 -7
- data/pilot/lib/pilot/options.rb +6 -0
- data/sigh/lib/assets/resign.sh +18 -0
- data/spaceship/lib/spaceship/client.rb +1 -2
- data/spaceship/lib/spaceship/connect_api/client.rb +0 -1
- data/spaceship/lib/spaceship/connect_api/file_uploader.rb +0 -1
- data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +4 -4
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/certificate.rb +11 -1
- metadata +36 -46
- data/deliver/lib/deliver/.download_screenshots.rb.swp +0 -0
- data/deliver/lib/deliver/.upload_screenshots.rb.swp +0 -0
- data/spaceship/lib/spaceship/babosa_fix.rb +0 -30
- data/spaceship/lib/spaceship/connect_api/.file_uploader.rb.swp +0 -0
- data/spaceship/lib/spaceship/connect_api/models/.app_screenshot.rb.swp +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: d0172d03e9f2dcbb76ce58ce0064caa8e107e0aeba78f63376ed1d9eb3a9e41e
|
|
4
|
+
data.tar.gz: fcc74d8f86f188653c4395c50c4da7ed5660d6c065816779af45d100855e68ea
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 885d5bec8f98d24a8cfa4091d956fbba3a5e13fb09edaa76549608aacc90568ac698c1143bfa041f310702a31d8080170afd804b2d98b1af18f75bff657fd66d
|
|
7
|
+
data.tar.gz: e2c9b1dc7e9830a79d3ee841f377dfdf541680f8efa9ee2df9867b46459530856cc07c0e99652749b9af9fa4571688e895e19f2af9692e4a188b74ee8f69f1fa
|
data/README.md
CHANGED
|
@@ -40,69 +40,43 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
40
40
|
</a>
|
|
41
41
|
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
|
42
42
|
</td>
|
|
43
|
-
<td id='
|
|
44
|
-
<a href='https://github.com/
|
|
45
|
-
<img src='https://github.com/
|
|
43
|
+
<td id='jimmy-dee'>
|
|
44
|
+
<a href='https://github.com/jdee'>
|
|
45
|
+
<img src='https://github.com/jdee.png?size=140'>
|
|
46
46
|
</a>
|
|
47
|
-
<h4 align='center'
|
|
47
|
+
<h4 align='center'>Jimmy Dee</h4>
|
|
48
48
|
</td>
|
|
49
|
-
<td id='
|
|
50
|
-
<a href='https://github.com/
|
|
51
|
-
<img src='https://github.com/
|
|
49
|
+
<td id='kohki-miki'>
|
|
50
|
+
<a href='https://github.com/giginet'>
|
|
51
|
+
<img src='https://github.com/giginet.png?size=140'>
|
|
52
52
|
</a>
|
|
53
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
53
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
|
54
54
|
</td>
|
|
55
|
-
<td id='
|
|
56
|
-
<a href='https://github.com/
|
|
57
|
-
<img src='https://github.com/
|
|
55
|
+
<td id='olivier-halligon'>
|
|
56
|
+
<a href='https://github.com/AliSoftware'>
|
|
57
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
|
58
58
|
</a>
|
|
59
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
59
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
|
60
60
|
</td>
|
|
61
|
-
<td id='
|
|
62
|
-
<a href='https://github.com/
|
|
63
|
-
<img src='https://github.com/
|
|
61
|
+
<td id='jan-piotrowski'>
|
|
62
|
+
<a href='https://github.com/janpio'>
|
|
63
|
+
<img src='https://github.com/janpio.png?size=140'>
|
|
64
64
|
</a>
|
|
65
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
65
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
|
66
66
|
</td>
|
|
67
67
|
</tr>
|
|
68
68
|
<tr>
|
|
69
|
-
<td id='
|
|
70
|
-
<a href='https://github.com/
|
|
71
|
-
<img src='https://github.com/
|
|
72
|
-
</a>
|
|
73
|
-
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
74
|
-
</td>
|
|
75
|
-
<td id='danielle-tomlinson'>
|
|
76
|
-
<a href='https://github.com/endocrimes'>
|
|
77
|
-
<img src='https://github.com/endocrimes.png?size=140'>
|
|
78
|
-
</a>
|
|
79
|
-
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
|
80
|
-
</td>
|
|
81
|
-
<td id='fumiya-nakamura'>
|
|
82
|
-
<a href='https://github.com/nafu'>
|
|
83
|
-
<img src='https://github.com/nafu.png?size=140'>
|
|
84
|
-
</a>
|
|
85
|
-
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
86
|
-
</td>
|
|
87
|
-
<td id='jimmy-dee'>
|
|
88
|
-
<a href='https://github.com/jdee'>
|
|
89
|
-
<img src='https://github.com/jdee.png?size=140'>
|
|
90
|
-
</a>
|
|
91
|
-
<h4 align='center'>Jimmy Dee</h4>
|
|
92
|
-
</td>
|
|
93
|
-
<td id='joshua-liebowitz'>
|
|
94
|
-
<a href='https://github.com/taquitos'>
|
|
95
|
-
<img src='https://github.com/taquitos.png?size=140'>
|
|
69
|
+
<td id='daniel-jankowski'>
|
|
70
|
+
<a href='https://github.com/mollyIV'>
|
|
71
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
|
96
72
|
</a>
|
|
97
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
73
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
|
98
74
|
</td>
|
|
99
|
-
|
|
100
|
-
<
|
|
101
|
-
<
|
|
102
|
-
<a href='https://github.com/getaaron'>
|
|
103
|
-
<img src='https://github.com/getaaron.png?size=140'>
|
|
75
|
+
<td id='matthew-ellis'>
|
|
76
|
+
<a href='https://github.com/matthewellis'>
|
|
77
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
|
104
78
|
</a>
|
|
105
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
79
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
|
106
80
|
</td>
|
|
107
81
|
<td id='helmut-januschka'>
|
|
108
82
|
<a href='https://github.com/hjanuschka'>
|
|
@@ -116,43 +90,37 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
116
90
|
</a>
|
|
117
91
|
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
|
118
92
|
</td>
|
|
119
|
-
<td id='
|
|
120
|
-
<a href='https://github.com/
|
|
121
|
-
<img src='https://github.com/
|
|
122
|
-
</a>
|
|
123
|
-
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
124
|
-
</td>
|
|
125
|
-
<td id='maksym-grebenets'>
|
|
126
|
-
<a href='https://github.com/mgrebenets'>
|
|
127
|
-
<img src='https://github.com/mgrebenets.png?size=140'>
|
|
93
|
+
<td id='fumiya-nakamura'>
|
|
94
|
+
<a href='https://github.com/nafu'>
|
|
95
|
+
<img src='https://github.com/nafu.png?size=140'>
|
|
128
96
|
</a>
|
|
129
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
97
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
|
130
98
|
</td>
|
|
131
99
|
</tr>
|
|
132
100
|
<tr>
|
|
133
|
-
<td id='
|
|
134
|
-
<a href='https://github.com/
|
|
135
|
-
<img src='https://github.com/
|
|
101
|
+
<td id='andrew-mcburney'>
|
|
102
|
+
<a href='https://github.com/armcburney'>
|
|
103
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
|
136
104
|
</a>
|
|
137
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
105
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
|
138
106
|
</td>
|
|
139
|
-
<td id='
|
|
140
|
-
<a href='https://github.com/
|
|
141
|
-
<img src='https://github.com/
|
|
107
|
+
<td id='iulian-onofrei'>
|
|
108
|
+
<a href='https://github.com/revolter'>
|
|
109
|
+
<img src='https://github.com/revolter.png?size=140'>
|
|
142
110
|
</a>
|
|
143
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
111
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
|
144
112
|
</td>
|
|
145
|
-
<td id='
|
|
146
|
-
<a href='https://github.com/
|
|
147
|
-
<img src='https://github.com/
|
|
113
|
+
<td id='luka-mirosevic'>
|
|
114
|
+
<a href='https://github.com/lmirosevic'>
|
|
115
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
|
148
116
|
</a>
|
|
149
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
117
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
|
150
118
|
</td>
|
|
151
|
-
<td id='
|
|
152
|
-
<a href='https://github.com/
|
|
153
|
-
<img src='https://github.com/
|
|
119
|
+
<td id='stefan-natchev'>
|
|
120
|
+
<a href='https://github.com/snatchev'>
|
|
121
|
+
<img src='https://github.com/snatchev.png?size=140'>
|
|
154
122
|
</a>
|
|
155
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
123
|
+
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
|
156
124
|
</td>
|
|
157
125
|
<td id='felix-krause'>
|
|
158
126
|
<a href='https://github.com/KrauseFx'>
|
|
@@ -162,17 +130,49 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
|
162
130
|
</td>
|
|
163
131
|
</tr>
|
|
164
132
|
<tr>
|
|
165
|
-
<td id='
|
|
166
|
-
<a href='https://github.com/
|
|
167
|
-
<img src='https://github.com/
|
|
133
|
+
<td id='jérôme-lacoste'>
|
|
134
|
+
<a href='https://github.com/lacostej'>
|
|
135
|
+
<img src='https://github.com/lacostej.png?size=140'>
|
|
168
136
|
</a>
|
|
169
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
137
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
|
170
138
|
</td>
|
|
171
|
-
<td id='
|
|
172
|
-
<a href='https://github.com/
|
|
173
|
-
<img src='https://github.com/
|
|
139
|
+
<td id='joshua-liebowitz'>
|
|
140
|
+
<a href='https://github.com/taquitos'>
|
|
141
|
+
<img src='https://github.com/taquitos.png?size=140'>
|
|
174
142
|
</a>
|
|
175
|
-
<h4 align='center'><a href='https://twitter.com/
|
|
143
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
|
144
|
+
</td>
|
|
145
|
+
<td id='danielle-tomlinson'>
|
|
146
|
+
<a href='https://github.com/endocrimes'>
|
|
147
|
+
<img src='https://github.com/endocrimes.png?size=140'>
|
|
148
|
+
</a>
|
|
149
|
+
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
|
150
|
+
</td>
|
|
151
|
+
<td id='manu-wallner'>
|
|
152
|
+
<a href='https://github.com/milch'>
|
|
153
|
+
<img src='https://github.com/milch.png?size=140'>
|
|
154
|
+
</a>
|
|
155
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
|
156
|
+
</td>
|
|
157
|
+
<td id='aaron-brager'>
|
|
158
|
+
<a href='https://github.com/getaaron'>
|
|
159
|
+
<img src='https://github.com/getaaron.png?size=140'>
|
|
160
|
+
</a>
|
|
161
|
+
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
|
162
|
+
</td>
|
|
163
|
+
</tr>
|
|
164
|
+
<tr>
|
|
165
|
+
<td id='jorge-revuelta-h'>
|
|
166
|
+
<a href='https://github.com/minuscorp'>
|
|
167
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
|
168
|
+
</a>
|
|
169
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
|
170
|
+
</td>
|
|
171
|
+
<td id='maksym-grebenets'>
|
|
172
|
+
<a href='https://github.com/mgrebenets'>
|
|
173
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
|
174
|
+
</a>
|
|
175
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
|
176
176
|
</td>
|
|
177
177
|
</table>
|
|
178
178
|
|
|
Binary file
|
|
@@ -51,9 +51,9 @@ module Deliver
|
|
|
51
51
|
# iPad iMessage
|
|
52
52
|
IOS_IPAD_MESSAGES = "iOS-iPad-messages"
|
|
53
53
|
# iPad 10.5 iMessage
|
|
54
|
-
IOS_IPAD_10_5_MESSAGES = "iOS-10.5-messages"
|
|
54
|
+
IOS_IPAD_10_5_MESSAGES = "iOS-iPad-10.5-messages"
|
|
55
55
|
# iPad 11 iMessage
|
|
56
|
-
IOS_IPAD_11_MESSAGES = "iOS-11-messages"
|
|
56
|
+
IOS_IPAD_11_MESSAGES = "iOS-iPad-11-messages"
|
|
57
57
|
# iPad Pro iMessage
|
|
58
58
|
IOS_IPAD_PRO_MESSAGES = "iOS-iPad-Pro-messages"
|
|
59
59
|
# iPad Pro (12.9-inch) (3rd generation) iMessage
|
|
@@ -113,8 +113,8 @@ module Deliver
|
|
|
113
113
|
ScreenSize::IOS_58_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_58,
|
|
114
114
|
ScreenSize::IOS_65_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPHONE_65,
|
|
115
115
|
ScreenSize::IOS_IPAD_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_97,
|
|
116
|
-
ScreenSize::IOS_IPAD_PRO_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::
|
|
117
|
-
ScreenSize::IOS_IPAD_PRO_12_9_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::
|
|
116
|
+
ScreenSize::IOS_IPAD_PRO_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_PRO_129,
|
|
117
|
+
ScreenSize::IOS_IPAD_PRO_12_9_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_PRO_3GEN_129,
|
|
118
118
|
ScreenSize::IOS_IPAD_10_5_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_105,
|
|
119
119
|
ScreenSize::IOS_IPAD_11_MESSAGES => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::IMESSAGE_APP_IPAD_PRO_3GEN_11,
|
|
120
120
|
ScreenSize::MAC => Spaceship::ConnectAPI::AppScreenshotSet::DisplayType::APP_DESKTOP,
|
|
@@ -28,42 +28,49 @@ module Deliver
|
|
|
28
28
|
end
|
|
29
29
|
|
|
30
30
|
localizations = version.get_app_store_version_localizations
|
|
31
|
+
threads = []
|
|
31
32
|
localizations.each do |localization|
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
url = screenshot.image_asset_url(type: original_file_extension)
|
|
40
|
-
next if url.nil?
|
|
33
|
+
threads << Thread.new do
|
|
34
|
+
download_screenshots(folder_path, localization)
|
|
35
|
+
end
|
|
36
|
+
end
|
|
37
|
+
threads.each(&:join)
|
|
38
|
+
end
|
|
41
39
|
|
|
42
|
-
|
|
40
|
+
def self.download_screenshots(folder_path, localization)
|
|
41
|
+
language = localization.locale
|
|
42
|
+
screenshot_sets = localization.get_app_screenshot_sets
|
|
43
|
+
screenshot_sets.each do |screenshot_set|
|
|
44
|
+
screenshot_set.app_screenshots.each_with_index do |screenshot, index|
|
|
45
|
+
file_name = [index, screenshot_set.screenshot_display_type, index].join("_")
|
|
46
|
+
original_file_extension = File.extname(screenshot.file_name).strip.downcase[1..-1]
|
|
47
|
+
file_name += "." + original_file_extension
|
|
43
48
|
|
|
44
|
-
|
|
49
|
+
url = screenshot.image_asset_url(type: original_file_extension)
|
|
50
|
+
next if url.nil?
|
|
45
51
|
|
|
46
|
-
|
|
47
|
-
# screen shot later as the screen size is the same as an iPhone 6 Plus in landscape.
|
|
48
|
-
if screenshot_set.apple_tv?
|
|
49
|
-
containing_folder = File.join(folder_path, "appleTV", language)
|
|
50
|
-
else
|
|
51
|
-
containing_folder = File.join(folder_path, language)
|
|
52
|
-
end
|
|
52
|
+
UI.message("Downloading existing screenshot '#{file_name}' for language '#{language}'")
|
|
53
53
|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
# If the screen shot is for an appleTV we need to store it in a way that we'll know it's an appleTV
|
|
55
|
+
# screen shot later as the screen size is the same as an iPhone 6 Plus in landscape.
|
|
56
|
+
if screenshot_set.apple_tv?
|
|
57
|
+
containing_folder = File.join(folder_path, "appleTV", language)
|
|
58
|
+
else
|
|
59
|
+
containing_folder = File.join(folder_path, language)
|
|
60
|
+
end
|
|
57
61
|
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
# if it's already there
|
|
62
|
-
end
|
|
62
|
+
if screenshot_set.imessage?
|
|
63
|
+
containing_folder = File.join(folder_path, "iMessage", language)
|
|
64
|
+
end
|
|
63
65
|
|
|
64
|
-
|
|
65
|
-
|
|
66
|
+
begin
|
|
67
|
+
FileUtils.mkdir_p(containing_folder)
|
|
68
|
+
rescue
|
|
69
|
+
# if it's already there
|
|
66
70
|
end
|
|
71
|
+
|
|
72
|
+
path = File.join(containing_folder, file_name)
|
|
73
|
+
File.binwrite(path, open(url).read)
|
|
67
74
|
end
|
|
68
75
|
end
|
|
69
76
|
end
|
|
@@ -165,11 +165,17 @@ module Deliver
|
|
|
165
165
|
FastlaneCore::ConfigItem.new(key: :auto_release_date,
|
|
166
166
|
env_name: "DELIVER_AUTO_RELEASE_DATE",
|
|
167
167
|
description: "Date in milliseconds for automatically releasing on pending approval (Can not be used together with `automatic_release`)",
|
|
168
|
-
|
|
168
|
+
type: Integer,
|
|
169
169
|
optional: true,
|
|
170
170
|
conflicting_options: [:automatic_release],
|
|
171
171
|
conflict_block: proc do |value|
|
|
172
172
|
UI.user_error!("You can't use 'auto_release_date' and '#{value.key}' options together.")
|
|
173
|
+
end,
|
|
174
|
+
verify_block: proc do |value|
|
|
175
|
+
now_in_ms = Time.now.to_i * 1000
|
|
176
|
+
if value < now_in_ms
|
|
177
|
+
UI.user_error!("'#{value}' needs to be in the future and in milliseonds (current time is '#{now_in_ms}')")
|
|
178
|
+
end
|
|
173
179
|
end),
|
|
174
180
|
FastlaneCore::ConfigItem.new(key: :phased_release,
|
|
175
181
|
env_name: "DELIVER_PHASED_RELEASE",
|
|
@@ -286,7 +292,7 @@ module Deliver
|
|
|
286
292
|
deprecated: "Removed after the migration to the new App Store Connect API in June 2020",
|
|
287
293
|
is_string: false,
|
|
288
294
|
type: Array,
|
|
289
|
-
|
|
295
|
+
optional: true),
|
|
290
296
|
|
|
291
297
|
# Non Localised
|
|
292
298
|
FastlaneCore::ConfigItem.new(key: :app_icon,
|
|
@@ -120,10 +120,10 @@ module Deliver
|
|
|
120
120
|
" Example: submission_information: { add_id_info_uses_idfa: false }",
|
|
121
121
|
" Example: submission_information: {",
|
|
122
122
|
" add_id_info_uses_idfa: true,",
|
|
123
|
-
" add_id_info_limits_tracking: false,",
|
|
124
123
|
" add_id_info_serves_ads: false,",
|
|
125
|
-
"
|
|
126
|
-
"
|
|
124
|
+
" add_id_info_tracks_install: true,",
|
|
125
|
+
" add_id_info_tracks_action: true,",
|
|
126
|
+
" add_id_info_limits_tracking: true",
|
|
127
127
|
" }",
|
|
128
128
|
" Example CLI:",
|
|
129
129
|
" --submission_information \"{\\\"add_id_info_uses_idfa\\\": false}\""
|
|
@@ -134,10 +134,10 @@ module Deliver
|
|
|
134
134
|
# Create, update, or delete IDFA declaration
|
|
135
135
|
if uses_idfa == false
|
|
136
136
|
if idfa_declaration
|
|
137
|
-
UI.verbose("Deleting IDFA
|
|
137
|
+
UI.verbose("Deleting IDFA declaration")
|
|
138
138
|
idfa_declaration.delete!
|
|
139
139
|
updated_idfa = true
|
|
140
|
-
UI.verbose("Deleted IDFA
|
|
140
|
+
UI.verbose("Deleted IDFA declaration")
|
|
141
141
|
end
|
|
142
142
|
elsif uses_idfa == true
|
|
143
143
|
attributes = {
|
|
@@ -148,19 +148,19 @@ module Deliver
|
|
|
148
148
|
}
|
|
149
149
|
|
|
150
150
|
if idfa_declaration
|
|
151
|
-
UI.verbose("Updating IDFA
|
|
151
|
+
UI.verbose("Updating IDFA declaration")
|
|
152
152
|
idfa_declaration.update(attributes: attributes)
|
|
153
|
-
UI.verbose("Updated IDFA
|
|
153
|
+
UI.verbose("Updated IDFA declaration")
|
|
154
154
|
else
|
|
155
|
-
UI.verbose("Creating IDFA
|
|
155
|
+
UI.verbose("Creating IDFA declaration")
|
|
156
156
|
version.create_idfa_declaration(attributes: attributes)
|
|
157
|
-
UI.verbose("Created IDFA
|
|
157
|
+
UI.verbose("Created IDFA declaration")
|
|
158
158
|
end
|
|
159
159
|
|
|
160
160
|
updated_idfa = true
|
|
161
161
|
end
|
|
162
162
|
|
|
163
|
-
UI.success("Successfully updated IDFA
|
|
163
|
+
UI.success("Successfully updated IDFA declarations on App Store Connect") if updated_idfa
|
|
164
164
|
end
|
|
165
165
|
|
|
166
166
|
def update_submission_information(options, app)
|
|
@@ -175,6 +175,11 @@ module Deliver
|
|
|
175
175
|
end
|
|
176
176
|
non_localized_version_attributes['releaseType'] = release_type
|
|
177
177
|
|
|
178
|
+
# Update app store version
|
|
179
|
+
# This needs to happen before updating localizations (https://openradar.appspot.com/radar?id=4925914991296512)
|
|
180
|
+
UI.message("Uploading metadata to App Store Connect for version")
|
|
181
|
+
version.update(attributes: non_localized_version_attributes)
|
|
182
|
+
|
|
178
183
|
# Update app store version localizations
|
|
179
184
|
app_store_version_localizations.each do |app_store_version_localization|
|
|
180
185
|
attributes = localized_version_attributes_by_locale[app_store_version_localization.locale]
|
|
@@ -193,10 +198,6 @@ module Deliver
|
|
|
193
198
|
end
|
|
194
199
|
end
|
|
195
200
|
|
|
196
|
-
# Update app store version
|
|
197
|
-
UI.message("Uploading metadata to App Store Connect for version")
|
|
198
|
-
version.update(attributes: non_localized_version_attributes)
|
|
199
|
-
|
|
200
201
|
# Update categories
|
|
201
202
|
app_info = app.fetch_edit_app_info
|
|
202
203
|
if app_info
|
|
@@ -271,7 +272,7 @@ module Deliver
|
|
|
271
272
|
next if k.nil? || v.nil?
|
|
272
273
|
next if k == v
|
|
273
274
|
has_mapped_values = true
|
|
274
|
-
UI.deprecated("Category '#{k}' from iTunesConnect
|
|
275
|
+
UI.deprecated("Category '#{k}' from iTunesConnect has been deprecated. Please replace with '#{v}'")
|
|
275
276
|
end
|
|
276
277
|
UI.deprecated("You can find more info at https://docs.fastlane.tools/actions/deliver/#reference") if has_mapped_values
|
|
277
278
|
|
|
@@ -330,10 +331,6 @@ module Deliver
|
|
|
330
331
|
seconds_in_hour = 60 * 60
|
|
331
332
|
time_in_s_to_hour = (time_in_s / seconds_in_hour).to_i * seconds_in_hour
|
|
332
333
|
|
|
333
|
-
# Remove minute offset if timezone has minute offset
|
|
334
|
-
minute_offset = Time.now.utc_offset % seconds_in_hour
|
|
335
|
-
time_in_s_to_hour -= minute_offset
|
|
336
|
-
|
|
337
334
|
return Time.at(time_in_s_to_hour).utc.strftime("%Y-%m-%dT%H:%M:%S%:z")
|
|
338
335
|
end
|
|
339
336
|
|
|
@@ -614,12 +611,12 @@ module Deliver
|
|
|
614
611
|
next if k.nil? || v.nil?
|
|
615
612
|
next if k == v
|
|
616
613
|
has_mapped_values = true
|
|
617
|
-
UI.deprecated("Age rating '#{k}' from iTunesConnect
|
|
614
|
+
UI.deprecated("Age rating '#{k}' from iTunesConnect has been deprecated. Please replace with '#{v}'")
|
|
618
615
|
end
|
|
619
616
|
UI.deprecated("You can find more info at https://docs.fastlane.tools/actions/deliver/#reference") if has_mapped_values
|
|
620
617
|
|
|
621
|
-
|
|
622
|
-
|
|
618
|
+
age_rating_declaration = version.fetch_age_rating_declaration
|
|
619
|
+
age_rating_declaration.update(attributes: attributes)
|
|
623
620
|
end
|
|
624
621
|
end
|
|
625
622
|
# rubocop:enable Metrics/ClassLength
|