fastlane 2.150.1 → 2.151.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +78 -78
- data/{fastlane/lib/fastlane/actions/.update_project_provisioning.rb.swp → deliver/lib/deliver/.commands_generator.rb.swp} +0 -0
- data/deliver/lib/deliver/.submit_for_review.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 +7 -1
- data/deliver/lib/deliver/runner.rb +7 -3
- data/deliver/lib/deliver/submit_for_review.rb +7 -7
- data/deliver/lib/deliver/upload_metadata.rb +5 -5
- 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/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/slather.rb +7 -0
- data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +10 -2
- data/fastlane/lib/fastlane/documentation/docs_generator.rb +1 -1
- data/{pilot/lib/pilot/.manager.rb.swp → fastlane/lib/fastlane/helper/.s3_client_helper.rb.swp} +0 -0
- 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 +2819 -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/{fastlane/lib/fastlane/actions/.hockey.rb.swp → frameit/lib/frameit/.editor.rb.swp} +0 -0
- 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/sigh/lib/assets/resign.sh +18 -0
- data/spaceship/lib/spaceship/{connect_api/.DS_Store → .DS_Store} +0 -0
- data/spaceship/lib/spaceship/client.rb +1 -2
- data/spaceship/lib/spaceship/connect_api.rb +1 -0
- 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.rb +3 -3
- data/spaceship/lib/spaceship/connect_api/models/app_info.rb +24 -1
- data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +7 -6
- data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +31 -2
- data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +24 -2
- data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +1 -1
- data/spaceship/lib/spaceship/connect_api/models/certificate.rb +11 -1
- data/spaceship/lib/spaceship/connect_api/models/sandbox_tester.rb +64 -0
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +45 -0
- metadata +45 -51
- data/fastlane/lib/fastlane/actions/.slack.rb.swp +0 -0
- data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcuserdata/josh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
- data/spaceship/lib/spaceship/babosa_fix.rb +0 -30
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 464c3b50c55d5218b4d201e97b429d41186c250824e8dc4afb147035b22389bd
|
4
|
+
data.tar.gz: 60decb80f61f2690c2a21917dcffc03e5a09e15885abc7f26aa53d8db7bbf27f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 86eb7c64a1f3bae172c3741700305415337779bcf6fdfd0ad044de2fe1bcafb373579e229637837c90653237d469f1b896023dedb1e7c6cf6a6a04cdd23efe1c
|
7
|
+
data.tar.gz: 39dd908d4e3bb4d8d2bf7bbe569289967818059fdd990665762509f1d28bbdb500069cdddc56dc52889f0f1c58087cf89e906b1966c25748bc7c65c5e94e8184
|
data/README.md
CHANGED
@@ -34,49 +34,75 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
34
34
|
<!-- This table is regenerated and resorted on each release -->
|
35
35
|
<table id='team'>
|
36
36
|
<tr>
|
37
|
+
<td id='daniel-jankowski'>
|
38
|
+
<a href='https://github.com/mollyIV'>
|
39
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
40
|
+
</a>
|
41
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
42
|
+
</td>
|
43
|
+
<td id='luka-mirosevic'>
|
44
|
+
<a href='https://github.com/lmirosevic'>
|
45
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
46
|
+
</a>
|
47
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
48
|
+
</td>
|
37
49
|
<td id='maksym-grebenets'>
|
38
50
|
<a href='https://github.com/mgrebenets'>
|
39
51
|
<img src='https://github.com/mgrebenets.png?size=140'>
|
40
52
|
</a>
|
41
53
|
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
42
54
|
</td>
|
43
|
-
<td id='
|
44
|
-
<a href='https://github.com/
|
45
|
-
<img src='https://github.com/
|
55
|
+
<td id='josh-holtz'>
|
56
|
+
<a href='https://github.com/joshdholtz'>
|
57
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
46
58
|
</a>
|
47
|
-
<h4 align='center'><a href='https://twitter.com/
|
59
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
48
60
|
</td>
|
61
|
+
<td id='joshua-liebowitz'>
|
62
|
+
<a href='https://github.com/taquitos'>
|
63
|
+
<img src='https://github.com/taquitos.png?size=140'>
|
64
|
+
</a>
|
65
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
66
|
+
</td>
|
67
|
+
</tr>
|
68
|
+
<tr>
|
49
69
|
<td id='stefan-natchev'>
|
50
70
|
<a href='https://github.com/snatchev'>
|
51
71
|
<img src='https://github.com/snatchev.png?size=140'>
|
52
72
|
</a>
|
53
73
|
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
54
74
|
</td>
|
55
|
-
<td id='
|
56
|
-
<a href='https://github.com/
|
57
|
-
<img src='https://github.com/
|
75
|
+
<td id='andrew-mcburney'>
|
76
|
+
<a href='https://github.com/armcburney'>
|
77
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
58
78
|
</a>
|
59
|
-
<h4 align='center'><a href='https://twitter.com/
|
79
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
60
80
|
</td>
|
61
|
-
<td id='
|
62
|
-
<a href='https://github.com/
|
63
|
-
<img src='https://github.com/
|
81
|
+
<td id='jorge-revuelta-h'>
|
82
|
+
<a href='https://github.com/minuscorp'>
|
83
|
+
<img src='https://github.com/minuscorp.png?size=140'>
|
64
84
|
</a>
|
65
|
-
<h4 align='center'><a href='https://twitter.com/
|
85
|
+
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
66
86
|
</td>
|
67
|
-
|
68
|
-
<
|
69
|
-
<
|
70
|
-
<a href='https://github.com/giginet'>
|
71
|
-
<img src='https://github.com/giginet.png?size=140'>
|
87
|
+
<td id='jimmy-dee'>
|
88
|
+
<a href='https://github.com/jdee'>
|
89
|
+
<img src='https://github.com/jdee.png?size=140'>
|
72
90
|
</a>
|
73
|
-
<h4 align='center'
|
91
|
+
<h4 align='center'>Jimmy Dee</h4>
|
74
92
|
</td>
|
75
|
-
<td id='
|
76
|
-
<a href='https://github.com/
|
77
|
-
<img src='https://github.com/
|
93
|
+
<td id='iulian-onofrei'>
|
94
|
+
<a href='https://github.com/revolter'>
|
95
|
+
<img src='https://github.com/revolter.png?size=140'>
|
78
96
|
</a>
|
79
|
-
<h4 align='center'><a href='https://twitter.com/
|
97
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
98
|
+
</td>
|
99
|
+
</tr>
|
100
|
+
<tr>
|
101
|
+
<td id='jan-piotrowski'>
|
102
|
+
<a href='https://github.com/janpio'>
|
103
|
+
<img src='https://github.com/janpio.png?size=140'>
|
104
|
+
</a>
|
105
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
80
106
|
</td>
|
81
107
|
<td id='danielle-tomlinson'>
|
82
108
|
<a href='https://github.com/endocrimes'>
|
@@ -84,20 +110,12 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
84
110
|
</a>
|
85
111
|
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
86
112
|
</td>
|
87
|
-
<td id='
|
88
|
-
<a href='https://github.com/
|
89
|
-
<img src='https://github.com/
|
90
|
-
</a>
|
91
|
-
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
92
|
-
</td>
|
93
|
-
<td id='fumiya-nakamura'>
|
94
|
-
<a href='https://github.com/nafu'>
|
95
|
-
<img src='https://github.com/nafu.png?size=140'>
|
113
|
+
<td id='kohki-miki'>
|
114
|
+
<a href='https://github.com/giginet'>
|
115
|
+
<img src='https://github.com/giginet.png?size=140'>
|
96
116
|
</a>
|
97
|
-
<h4 align='center'><a href='https://twitter.com/
|
117
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
98
118
|
</td>
|
99
|
-
</tr>
|
100
|
-
<tr>
|
101
119
|
<td id='aaron-brager'>
|
102
120
|
<a href='https://github.com/getaaron'>
|
103
121
|
<img src='https://github.com/getaaron.png?size=140'>
|
@@ -110,70 +128,52 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
110
128
|
</a>
|
111
129
|
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
112
130
|
</td>
|
113
|
-
<td id='jorge-revuelta-h'>
|
114
|
-
<a href='https://github.com/minuscorp'>
|
115
|
-
<img src='https://github.com/minuscorp.png?size=140'>
|
116
|
-
</a>
|
117
|
-
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
118
|
-
</td>
|
119
|
-
<td id='felix-krause'>
|
120
|
-
<a href='https://github.com/KrauseFx'>
|
121
|
-
<img src='https://github.com/KrauseFx.png?size=140'>
|
122
|
-
</a>
|
123
|
-
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
124
|
-
</td>
|
125
|
-
<td id='josh-holtz'>
|
126
|
-
<a href='https://github.com/joshdholtz'>
|
127
|
-
<img src='https://github.com/joshdholtz.png?size=140'>
|
128
|
-
</a>
|
129
|
-
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
130
|
-
</td>
|
131
131
|
</tr>
|
132
132
|
<tr>
|
133
|
-
<td id='
|
134
|
-
<a href='https://github.com/
|
135
|
-
<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'>
|
136
136
|
</a>
|
137
|
-
<h4 align='center'><a href='https://twitter.com/
|
137
|
+
<h4 align='center'><a href='https://twitter.com/lacostej'>Jérôme Lacoste</a></h4>
|
138
138
|
</td>
|
139
|
-
<td id='
|
140
|
-
<a href='https://github.com/
|
141
|
-
<img src='https://github.com/
|
139
|
+
<td id='fumiya-nakamura'>
|
140
|
+
<a href='https://github.com/nafu'>
|
141
|
+
<img src='https://github.com/nafu.png?size=140'>
|
142
142
|
</a>
|
143
|
-
<h4 align='center'><a href='https://twitter.com/
|
143
|
+
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
144
144
|
</td>
|
145
|
-
<td id='
|
146
|
-
<a href='https://github.com/
|
147
|
-
<img src='https://github.com/
|
145
|
+
<td id='matthew-ellis'>
|
146
|
+
<a href='https://github.com/matthewellis'>
|
147
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
148
148
|
</a>
|
149
|
-
<h4 align='center'><a href='https://twitter.com/
|
149
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
150
150
|
</td>
|
151
|
-
<td id='
|
152
|
-
<a href='https://github.com/
|
153
|
-
<img src='https://github.com/
|
151
|
+
<td id='felix-krause'>
|
152
|
+
<a href='https://github.com/KrauseFx'>
|
153
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
154
154
|
</a>
|
155
|
-
<h4 align='center'>
|
155
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
156
156
|
</td>
|
157
|
-
<td id='
|
158
|
-
<a href='https://github.com/
|
159
|
-
<img src='https://github.com/
|
157
|
+
<td id='helmut-januschka'>
|
158
|
+
<a href='https://github.com/hjanuschka'>
|
159
|
+
<img src='https://github.com/hjanuschka.png?size=140'>
|
160
160
|
</a>
|
161
|
-
<h4 align='center'><a href='https://twitter.com/
|
161
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
162
162
|
</td>
|
163
163
|
</tr>
|
164
164
|
<tr>
|
165
|
-
<td id='daniel-jankowski'>
|
166
|
-
<a href='https://github.com/mollyIV'>
|
167
|
-
<img src='https://github.com/mollyIV.png?size=140'>
|
168
|
-
</a>
|
169
|
-
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
170
|
-
</td>
|
171
165
|
<td id='olivier-halligon'>
|
172
166
|
<a href='https://github.com/AliSoftware'>
|
173
167
|
<img src='https://github.com/AliSoftware.png?size=140'>
|
174
168
|
</a>
|
175
169
|
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
176
170
|
</td>
|
171
|
+
<td id='max-ott'>
|
172
|
+
<a href='https://github.com/max-ott'>
|
173
|
+
<img src='https://github.com/max-ott.png?size=140'>
|
174
|
+
</a>
|
175
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
176
|
+
</td>
|
177
177
|
</table>
|
178
178
|
|
179
179
|
Special thanks to all [contributors](https://github.com/fastlane/fastlane/graphs/contributors) for extending and improving _fastlane_.
|
Binary file
|
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",
|
@@ -34,6 +34,11 @@ module Deliver
|
|
34
34
|
|
35
35
|
def run
|
36
36
|
verify_version if options[:app_version].to_s.length > 0 && !options[:skip_app_version_update]
|
37
|
+
|
38
|
+
# Rejecting before upload meta
|
39
|
+
# Screenshots can not be update/deleted if in waiting for review
|
40
|
+
reject_version_if_possible if options[:reject_if_possible]
|
41
|
+
|
37
42
|
upload_metadata
|
38
43
|
|
39
44
|
has_binary = (options[:ipa] || options[:pkg])
|
@@ -43,8 +48,6 @@ module Deliver
|
|
43
48
|
|
44
49
|
UI.success("Finished the upload to App Store Connect") unless options[:skip_binary_upload]
|
45
50
|
|
46
|
-
reject_version_if_possible if options[:reject_if_possible]
|
47
|
-
|
48
51
|
precheck_success = precheck_app
|
49
52
|
submit_for_review if options[:submit_for_review] && precheck_success
|
50
53
|
end
|
@@ -163,7 +166,8 @@ module Deliver
|
|
163
166
|
app_id = legacy_app.apple_id
|
164
167
|
app = Spaceship::ConnectAPI::App.get(app_id: app_id)
|
165
168
|
|
166
|
-
|
169
|
+
platform = Spaceship::ConnectAPI::Platform.map(options[:platform])
|
170
|
+
if app.reject_version_if_possible!(platform: platform)
|
167
171
|
UI.success("Successfully rejected previous version!")
|
168
172
|
end
|
169
173
|
end
|
@@ -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)
|
@@ -271,7 +271,7 @@ module Deliver
|
|
271
271
|
next if k.nil? || v.nil?
|
272
272
|
next if k == v
|
273
273
|
has_mapped_values = true
|
274
|
-
UI.deprecated("Category '#{k}' from iTunesConnect
|
274
|
+
UI.deprecated("Category '#{k}' from iTunesConnect has been deprecated. Please replace with '#{v}'")
|
275
275
|
end
|
276
276
|
UI.deprecated("You can find more info at https://docs.fastlane.tools/actions/deliver/#reference") if has_mapped_values
|
277
277
|
|
@@ -330,7 +330,7 @@ module Deliver
|
|
330
330
|
seconds_in_hour = 60 * 60
|
331
331
|
time_in_s_to_hour = (time_in_s / seconds_in_hour).to_i * seconds_in_hour
|
332
332
|
|
333
|
-
return Time.at(time_in_s_to_hour).strftime("%Y-%m-%dT%H:%M:%S%:z")
|
333
|
+
return Time.at(time_in_s_to_hour).utc.strftime("%Y-%m-%dT%H:%M:%S%:z")
|
334
334
|
end
|
335
335
|
|
336
336
|
# If the user is using the 'default' language, then assign values where they are needed
|
@@ -610,12 +610,12 @@ module Deliver
|
|
610
610
|
next if k.nil? || v.nil?
|
611
611
|
next if k == v
|
612
612
|
has_mapped_values = true
|
613
|
-
UI.deprecated("Age rating '#{k}' from iTunesConnect
|
613
|
+
UI.deprecated("Age rating '#{k}' from iTunesConnect has been deprecated. Please replace with '#{v}'")
|
614
614
|
end
|
615
615
|
UI.deprecated("You can find more info at https://docs.fastlane.tools/actions/deliver/#reference") if has_mapped_values
|
616
616
|
|
617
|
-
|
618
|
-
|
617
|
+
age_rating_declaration = version.fetch_age_rating_declaration
|
618
|
+
age_rating_declaration.update(attributes: attributes)
|
619
619
|
end
|
620
620
|
end
|
621
621
|
# rubocop:enable Metrics/ClassLength
|