fastlane 2.150.1 → 2.150.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 +72 -72
- data/{fastlane/lib/fastlane/actions/.update_project_provisioning.rb.swp → deliver/lib/deliver/.commands_generator.rb.swp} +0 -0
- data/{pilot/lib/pilot/.manager.rb.swp → deliver/lib/deliver/.download_screenshots.rb.swp} +0 -0
- data/deliver/lib/deliver/.submit_for_review.rb.swp +0 -0
- data/deliver/lib/deliver/.upload_metadata.rb.swp +0 -0
- data/deliver/lib/deliver/.upload_screenshots.rb.swp +0 -0
- data/deliver/lib/deliver/runner.rb +7 -3
- data/deliver/lib/deliver/upload_metadata.rb +5 -1
- data/fastlane/lib/fastlane/actions/slather.rb +7 -0
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +8 -5
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/{fastlane/lib/fastlane/actions/.hockey.rb.swp → frameit/lib/frameit/.editor.rb.swp} +0 -0
- data/spaceship/lib/spaceship/{connect_api/.DS_Store → .DS_Store} +0 -0
- data/spaceship/lib/spaceship/connect_api.rb +1 -0
- data/{fastlane/lib/fastlane/actions/.slack.rb.swp → spaceship/lib/spaceship/connect_api/.file_uploader.rb.swp} +0 -0
- data/spaceship/lib/spaceship/connect_api/models/.app_screenshot.rb.swp +0 -0
- 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 +3 -2
- 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/sandbox_tester.rb +64 -0
- data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +45 -0
- metadata +32 -28
- data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcuserdata/josh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 87ea2530852ddd4a16e80f9935752a54ce909b00d0c13960f5c1d57b41e40891
|
4
|
+
data.tar.gz: 126a9a64389074d2f34fde46baf7687574e91f9090f1d318f4583552d642e847
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f8b50d9557dbd71db173be7d854bc511f161f00e7a6115571b99dee6029806b3280d6386c19b0814a7175bd486f3fa46e0d9786a316102a0816c55e4315a5da5
|
7
|
+
data.tar.gz: 6c86f8a577d56a9a859a94765f51704ab80b2003facfb9b4baf355f693012d3a9b5f02def5b25fefa41750bb6bc8a1813d8a9faf73b19f541b1c4af626249fbf
|
data/README.md
CHANGED
@@ -34,11 +34,17 @@ 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='
|
38
|
-
<a href='https://github.com/
|
39
|
-
<img src='https://github.com/
|
37
|
+
<td id='max-ott'>
|
38
|
+
<a href='https://github.com/max-ott'>
|
39
|
+
<img src='https://github.com/max-ott.png?size=140'>
|
40
40
|
</a>
|
41
|
-
<h4 align='center'><a href='https://twitter.com/
|
41
|
+
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
42
|
+
</td>
|
43
|
+
<td id='jan-piotrowski'>
|
44
|
+
<a href='https://github.com/janpio'>
|
45
|
+
<img src='https://github.com/janpio.png?size=140'>
|
46
|
+
</a>
|
47
|
+
<h4 align='center'><a href='https://twitter.com/Sujan'>Jan Piotrowski</a></h4>
|
42
48
|
</td>
|
43
49
|
<td id='jérôme-lacoste'>
|
44
50
|
<a href='https://github.com/lacostej'>
|
@@ -52,31 +58,19 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
52
58
|
</a>
|
53
59
|
<h4 align='center'><a href='https://twitter.com/snatchev'>Stefan Natchev</a></h4>
|
54
60
|
</td>
|
55
|
-
<td id='
|
56
|
-
<a href='https://github.com/
|
57
|
-
<img src='https://github.com/
|
58
|
-
</a>
|
59
|
-
<h4 align='center'><a href='https://twitter.com/ott_max'>Max Ott</a></h4>
|
60
|
-
</td>
|
61
|
-
<td id='helmut-januschka'>
|
62
|
-
<a href='https://github.com/hjanuschka'>
|
63
|
-
<img src='https://github.com/hjanuschka.png?size=140'>
|
61
|
+
<td id='andrew-mcburney'>
|
62
|
+
<a href='https://github.com/armcburney'>
|
63
|
+
<img src='https://github.com/armcburney.png?size=140'>
|
64
64
|
</a>
|
65
|
-
<h4 align='center'><a href='https://twitter.com/
|
65
|
+
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</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/giginet'>Kohki Miki</a></h4>
|
74
|
-
</td>
|
75
|
-
<td id='matthew-ellis'>
|
76
|
-
<a href='https://github.com/matthewellis'>
|
77
|
-
<img src='https://github.com/matthewellis.png?size=140'>
|
69
|
+
<td id='manu-wallner'>
|
70
|
+
<a href='https://github.com/milch'>
|
71
|
+
<img src='https://github.com/milch.png?size=140'>
|
78
72
|
</a>
|
79
|
-
<h4 align='center'><a href='https://twitter.com/
|
73
|
+
<h4 align='center'><a href='https://twitter.com/acrooow'>Manu Wallner</a></h4>
|
80
74
|
</td>
|
81
75
|
<td id='danielle-tomlinson'>
|
82
76
|
<a href='https://github.com/endocrimes'>
|
@@ -84,18 +78,24 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
84
78
|
</a>
|
85
79
|
<h4 align='center'><a href='https://twitter.com/endocrimes'>Danielle Tomlinson</a></h4>
|
86
80
|
</td>
|
87
|
-
<td id='andrew-mcburney'>
|
88
|
-
<a href='https://github.com/armcburney'>
|
89
|
-
<img src='https://github.com/armcburney.png?size=140'>
|
90
|
-
</a>
|
91
|
-
<h4 align='center'><a href='https://twitter.com/armcburney'>Andrew McBurney</a></h4>
|
92
|
-
</td>
|
93
81
|
<td id='fumiya-nakamura'>
|
94
82
|
<a href='https://github.com/nafu'>
|
95
83
|
<img src='https://github.com/nafu.png?size=140'>
|
96
84
|
</a>
|
97
85
|
<h4 align='center'><a href='https://twitter.com/nafu003'>Fumiya Nakamura</a></h4>
|
98
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'>
|
96
|
+
</a>
|
97
|
+
<h4 align='center'><a href='https://twitter.com/taquitos'>Joshua Liebowitz</a></h4>
|
98
|
+
</td>
|
99
99
|
</tr>
|
100
100
|
<tr>
|
101
101
|
<td id='aaron-brager'>
|
@@ -104,11 +104,17 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
104
104
|
</a>
|
105
105
|
<h4 align='center'><a href='https://twitter.com/getaaron'>Aaron Brager</a></h4>
|
106
106
|
</td>
|
107
|
-
<td id='
|
108
|
-
<a href='https://github.com/
|
109
|
-
<img src='https://github.com/
|
107
|
+
<td id='helmut-januschka'>
|
108
|
+
<a href='https://github.com/hjanuschka'>
|
109
|
+
<img src='https://github.com/hjanuschka.png?size=140'>
|
110
110
|
</a>
|
111
|
-
<h4 align='center'><a href='https://twitter.com/
|
111
|
+
<h4 align='center'><a href='https://twitter.com/hjanuschka'>Helmut Januschka</a></h4>
|
112
|
+
</td>
|
113
|
+
<td id='josh-holtz'>
|
114
|
+
<a href='https://github.com/joshdholtz'>
|
115
|
+
<img src='https://github.com/joshdholtz.png?size=140'>
|
116
|
+
</a>
|
117
|
+
<h4 align='center'><a href='https://twitter.com/joshdholtz'>Josh Holtz</a></h4>
|
112
118
|
</td>
|
113
119
|
<td id='jorge-revuelta-h'>
|
114
120
|
<a href='https://github.com/minuscorp'>
|
@@ -116,63 +122,57 @@ If the above doesn't help, please [submit an issue](https://github.com/fastlane/
|
|
116
122
|
</a>
|
117
123
|
<h4 align='center'><a href='https://twitter.com/minuscorp'>Jorge Revuelta H</a></h4>
|
118
124
|
</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/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'>
|
125
|
+
<td id='maksym-grebenets'>
|
126
|
+
<a href='https://github.com/mgrebenets'>
|
127
|
+
<img src='https://github.com/mgrebenets.png?size=140'>
|
128
128
|
</a>
|
129
|
-
<h4 align='center'><a href='https://twitter.com/
|
129
|
+
<h4 align='center'><a href='https://twitter.com/mgrebenets'>Maksym Grebenets</a></h4>
|
130
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='olivier-halligon'>
|
134
|
+
<a href='https://github.com/AliSoftware'>
|
135
|
+
<img src='https://github.com/AliSoftware.png?size=140'>
|
136
136
|
</a>
|
137
|
-
<h4 align='center'><a href='https://twitter.com/
|
137
|
+
<h4 align='center'><a href='https://twitter.com/aligatr'>Olivier Halligon</a></h4>
|
138
138
|
</td>
|
139
|
-
<td id='
|
140
|
-
<a href='https://github.com/
|
141
|
-
<img src='https://github.com/
|
139
|
+
<td id='matthew-ellis'>
|
140
|
+
<a href='https://github.com/matthewellis'>
|
141
|
+
<img src='https://github.com/matthewellis.png?size=140'>
|
142
142
|
</a>
|
143
|
-
<h4 align='center'><a href='https://twitter.com/
|
143
|
+
<h4 align='center'><a href='https://twitter.com/mellis1995'>Matthew Ellis</a></h4>
|
144
144
|
</td>
|
145
|
-
<td id='
|
146
|
-
<a href='https://github.com/
|
147
|
-
<img src='https://github.com/
|
145
|
+
<td id='daniel-jankowski'>
|
146
|
+
<a href='https://github.com/mollyIV'>
|
147
|
+
<img src='https://github.com/mollyIV.png?size=140'>
|
148
148
|
</a>
|
149
|
-
<h4 align='center'><a href='https://twitter.com/
|
149
|
+
<h4 align='center'><a href='https://twitter.com/mollyIV'>Daniel Jankowski</a></h4>
|
150
150
|
</td>
|
151
|
-
<td id='
|
152
|
-
<a href='https://github.com/
|
153
|
-
<img src='https://github.com/
|
151
|
+
<td id='kohki-miki'>
|
152
|
+
<a href='https://github.com/giginet'>
|
153
|
+
<img src='https://github.com/giginet.png?size=140'>
|
154
154
|
</a>
|
155
|
-
<h4 align='center'>
|
155
|
+
<h4 align='center'><a href='https://twitter.com/giginet'>Kohki Miki</a></h4>
|
156
156
|
</td>
|
157
|
-
<td id='
|
158
|
-
<a href='https://github.com/
|
159
|
-
<img src='https://github.com/
|
157
|
+
<td id='felix-krause'>
|
158
|
+
<a href='https://github.com/KrauseFx'>
|
159
|
+
<img src='https://github.com/KrauseFx.png?size=140'>
|
160
160
|
</a>
|
161
|
-
<h4 align='center'><a href='https://twitter.com/
|
161
|
+
<h4 align='center'><a href='https://twitter.com/KrauseFx'>Felix Krause</a></h4>
|
162
162
|
</td>
|
163
163
|
</tr>
|
164
164
|
<tr>
|
165
|
-
<td id='
|
166
|
-
<a href='https://github.com/
|
167
|
-
<img src='https://github.com/
|
165
|
+
<td id='luka-mirosevic'>
|
166
|
+
<a href='https://github.com/lmirosevic'>
|
167
|
+
<img src='https://github.com/lmirosevic.png?size=140'>
|
168
168
|
</a>
|
169
|
-
<h4 align='center'><a href='https://twitter.com/
|
169
|
+
<h4 align='center'><a href='https://twitter.com/lmirosevic'>Luka Mirosevic</a></h4>
|
170
170
|
</td>
|
171
|
-
<td id='
|
172
|
-
<a href='https://github.com/
|
173
|
-
<img src='https://github.com/
|
171
|
+
<td id='iulian-onofrei'>
|
172
|
+
<a href='https://github.com/revolter'>
|
173
|
+
<img src='https://github.com/revolter.png?size=140'>
|
174
174
|
</a>
|
175
|
-
<h4 align='center'><a href='https://twitter.com/
|
175
|
+
<h4 align='center'><a href='https://twitter.com/Revolt666'>Iulian Onofrei</a></h4>
|
176
176
|
</td>
|
177
177
|
</table>
|
178
178
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -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
|
@@ -330,7 +330,11 @@ 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
|
-
|
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
|
+
return Time.at(time_in_s_to_hour).utc.strftime("%Y-%m-%dT%H:%M:%S%:z")
|
334
338
|
end
|
335
339
|
|
336
340
|
# If the user is using the 'default' language, then assign values where they are needed
|
@@ -16,6 +16,7 @@ module Fastlane
|
|
16
16
|
cobertura_xml: '--cobertura-xml',
|
17
17
|
sonarqube_xml: '--sonarqube-xml',
|
18
18
|
llvm_cov: '--llvm-cov',
|
19
|
+
json: '--json',
|
19
20
|
html: '--html',
|
20
21
|
show: '--show',
|
21
22
|
|
@@ -225,6 +226,12 @@ module Fastlane
|
|
225
226
|
description: "Tell slather that it should output results as llvm-cov show format",
|
226
227
|
is_string: false,
|
227
228
|
optional: true),
|
229
|
+
FastlaneCore::ConfigItem.new(key: :json,
|
230
|
+
env_name: "FL_SLATHER_JSON_ENABLED",
|
231
|
+
description: "Tell slather that it should output results as static JSON report",
|
232
|
+
is_string: false,
|
233
|
+
type: Boolean,
|
234
|
+
optional: true),
|
228
235
|
FastlaneCore::ConfigItem.new(key: :html,
|
229
236
|
env_name: "FL_SLATHER_HTML_ENABLED",
|
230
237
|
description: "Tell slather that it should output results as static HTML pages",
|
@@ -2799,7 +2799,7 @@ func downloadDsyms(username: String,
|
|
2799
2799
|
func downloadFromPlayStore(packageName: String,
|
2800
2800
|
versionName: String? = nil,
|
2801
2801
|
track: String = "production",
|
2802
|
-
metadataPath: String =
|
2802
|
+
metadataPath: String? = nil,
|
2803
2803
|
key: String? = nil,
|
2804
2804
|
issuer: String? = nil,
|
2805
2805
|
jsonKey: String? = nil,
|
@@ -6757,6 +6757,7 @@ func slackTrainStart(distance: Int = 5,
|
|
6757
6757
|
- coberturaXml: Tell slather that it should output results as Cobertura XML format
|
6758
6758
|
- sonarqubeXml: Tell slather that it should output results as SonarQube Generic XML format
|
6759
6759
|
- llvmCov: Tell slather that it should output results as llvm-cov show format
|
6760
|
+
- json: Tell slather that it should output results as static JSON report
|
6760
6761
|
- html: Tell slather that it should output results as static HTML pages
|
6761
6762
|
- show: Tell slather that it should open static html pages automatically
|
6762
6763
|
- sourceDirectory: Tell slather the location of your source files
|
@@ -6791,6 +6792,7 @@ func slather(buildDirectory: String? = nil,
|
|
6791
6792
|
coberturaXml: Bool? = nil,
|
6792
6793
|
sonarqubeXml: Bool? = nil,
|
6793
6794
|
llvmCov: Any? = nil,
|
6795
|
+
json: Bool? = nil,
|
6794
6796
|
html: Bool? = nil,
|
6795
6797
|
show: Bool = false,
|
6796
6798
|
sourceDirectory: String? = nil,
|
@@ -6821,6 +6823,7 @@ func slather(buildDirectory: String? = nil,
|
|
6821
6823
|
RubyCommand.Argument(name: "cobertura_xml", value: coberturaXml),
|
6822
6824
|
RubyCommand.Argument(name: "sonarqube_xml", value: sonarqubeXml),
|
6823
6825
|
RubyCommand.Argument(name: "llvm_cov", value: llvmCov),
|
6826
|
+
RubyCommand.Argument(name: "json", value: json),
|
6824
6827
|
RubyCommand.Argument(name: "html", value: html),
|
6825
6828
|
RubyCommand.Argument(name: "show", value: show),
|
6826
6829
|
RubyCommand.Argument(name: "source_directory", value: sourceDirectory),
|
@@ -7199,7 +7202,7 @@ func supply(packageName: String,
|
|
7199
7202
|
releaseStatus: String = "completed",
|
7200
7203
|
track: String = "production",
|
7201
7204
|
rollout: String? = nil,
|
7202
|
-
metadataPath: String =
|
7205
|
+
metadataPath: String? = nil,
|
7203
7206
|
key: String? = nil,
|
7204
7207
|
issuer: String? = nil,
|
7205
7208
|
jsonKey: String? = nil,
|
@@ -8308,7 +8311,7 @@ func uploadToPlayStore(packageName: String,
|
|
8308
8311
|
releaseStatus: String = "completed",
|
8309
8312
|
track: String = "production",
|
8310
8313
|
rollout: String? = nil,
|
8311
|
-
metadataPath: String =
|
8314
|
+
metadataPath: String? = nil,
|
8312
8315
|
key: String? = nil,
|
8313
8316
|
issuer: String? = nil,
|
8314
8317
|
jsonKey: String? = nil,
|
@@ -8818,7 +8821,7 @@ func xcov(workspace: String? = nil,
|
|
8818
8821
|
coverallsServiceJobId: String? = nil,
|
8819
8822
|
coverallsRepoToken: String? = nil,
|
8820
8823
|
xcconfig: String? = nil,
|
8821
|
-
ideFoundationPath: String = "/Applications/Xcode.app/Contents/Developer/../Frameworks/IDEFoundation.framework/Versions/A/IDEFoundation",
|
8824
|
+
ideFoundationPath: String = "/Applications/Xcode-11.5.app/Contents/Developer/../Frameworks/IDEFoundation.framework/Versions/A/IDEFoundation",
|
8822
8825
|
legacySupport: Bool = false) {
|
8823
8826
|
let command = RubyCommand(commandID: "", methodName: "xcov", className: nil, args: [RubyCommand.Argument(name: "workspace", value: workspace),
|
8824
8827
|
RubyCommand.Argument(name: "project", value: project),
|
@@ -8963,4 +8966,4 @@ let snapshotfile: Snapshotfile = Snapshotfile()
|
|
8963
8966
|
|
8964
8967
|
// Please don't remove the lines below
|
8965
8968
|
// They are used to detect outdated files
|
8966
|
-
// FastlaneRunnerAPIVersion [0.9.
|
8969
|
+
// FastlaneRunnerAPIVersion [0.9.73]
|
Binary file
|
Binary file
|
@@ -50,6 +50,7 @@ require 'spaceship/connect_api/models/app_store_version_phased_release'
|
|
50
50
|
require 'spaceship/connect_api/models/app_store_version'
|
51
51
|
require 'spaceship/connect_api/models/idfa_declaration'
|
52
52
|
require 'spaceship/connect_api/models/reset_ratings_request'
|
53
|
+
require 'spaceship/connect_api/models/sandbox_tester'
|
53
54
|
require 'spaceship/connect_api/models/territory'
|
54
55
|
|
55
56
|
module Spaceship
|
Binary file
|
Binary file
|
@@ -78,7 +78,7 @@ module Spaceship
|
|
78
78
|
# App Info
|
79
79
|
#
|
80
80
|
|
81
|
-
def fetch_edit_app_info
|
81
|
+
def fetch_edit_app_info(includes: Spaceship::ConnectAPI::AppInfo::ESSENTIAL_INCLUDES)
|
82
82
|
states = [
|
83
83
|
Spaceship::ConnectAPI::AppInfo::AppStoreState::PREPARE_FOR_SUBMISSION,
|
84
84
|
Spaceship::ConnectAPI::AppInfo::AppStoreState::DEVELOPER_REJECTED,
|
@@ -89,7 +89,7 @@ module Spaceship
|
|
89
89
|
]
|
90
90
|
|
91
91
|
filter = { app: id }
|
92
|
-
resp = Spaceship::ConnectAPI.get_app_infos(filter: filter)
|
92
|
+
resp = Spaceship::ConnectAPI.get_app_infos(filter: filter, includes: includes)
|
93
93
|
return resp.to_models.select do |model|
|
94
94
|
states.include?(model.app_store_state)
|
95
95
|
end.first
|
@@ -110,7 +110,7 @@ module Spaceship
|
|
110
110
|
# App Store Versions
|
111
111
|
#
|
112
112
|
|
113
|
-
def reject_version_if_possible!
|
113
|
+
def reject_version_if_possible!(platform: nil)
|
114
114
|
platform ||= Spaceship::ConnectAPI::Platform::IOS
|
115
115
|
filter = {
|
116
116
|
appStoreState: [
|
@@ -9,6 +9,13 @@ module Spaceship
|
|
9
9
|
attr_accessor :brazil_age_rating
|
10
10
|
attr_accessor :kids_age_band
|
11
11
|
|
12
|
+
attr_accessor :primary_category
|
13
|
+
attr_accessor :primary_subcategory_one
|
14
|
+
attr_accessor :primary_subcategory_two
|
15
|
+
attr_accessor :secondary_category
|
16
|
+
attr_accessor :secondary_subcategory_one
|
17
|
+
attr_accessor :secondary_subcategory_two
|
18
|
+
|
12
19
|
module AppStoreState
|
13
20
|
READY_FOR_SALE = "READY_FOR_SALE"
|
14
21
|
PROCESSING_FOR_APP_STORE = "PROCESSING_FOR_APP_STORE"
|
@@ -30,9 +37,25 @@ module Spaceship
|
|
30
37
|
"appStoreState" => "app_store_state",
|
31
38
|
"appStoreAgeRating" => "app_store_age_rating",
|
32
39
|
"brazilAgeRating" => "brazil_age_rating",
|
33
|
-
"kidsAgeBand" => "kids_age_band"
|
40
|
+
"kidsAgeBand" => "kids_age_band",
|
41
|
+
|
42
|
+
"primaryCategory" => "primary_category",
|
43
|
+
"primarySubcategoryOne" => "primary_subcategory_one",
|
44
|
+
"primarySubcategoryTwo" => "primary_subcategory_two",
|
45
|
+
"secondaryCategory" => "secondary_category",
|
46
|
+
"secondarySubcategoryOne" => "secondary_subcategory_one",
|
47
|
+
"secondarySubcategoryTwo" => "secondary_subcategory_two"
|
34
48
|
})
|
35
49
|
|
50
|
+
ESSENTIAL_INCLUDES = [
|
51
|
+
"primaryCategory",
|
52
|
+
"primarySubcategoryOne",
|
53
|
+
"primarySubcategoryTwo",
|
54
|
+
"secondaryCategory",
|
55
|
+
"secondarySubcategoryOne",
|
56
|
+
"secondarySubcategoryTwo"
|
57
|
+
].join(",")
|
58
|
+
|
36
59
|
def self.type
|
37
60
|
return "appInfos"
|
38
61
|
end
|
@@ -54,7 +54,7 @@ module Spaceship
|
|
54
54
|
# @param app_preview_set_id The AppPreviewSet id
|
55
55
|
# @param path The path of the file
|
56
56
|
# @param frame_time_code The time code for the preview still frame (ex: "00:00:07:01")
|
57
|
-
def self.create(app_preview_set_id: nil, path: nil, frame_time_code: nil)
|
57
|
+
def self.create(app_preview_set_id: nil, path: nil, wait_for_processing: true, frame_time_code: nil)
|
58
58
|
require 'faraday'
|
59
59
|
|
60
60
|
filename = File.basename(path)
|
@@ -95,7 +95,8 @@ module Spaceship
|
|
95
95
|
end
|
96
96
|
|
97
97
|
# Poll for video processing completion to set still frame time
|
98
|
-
unless frame_time_code.nil?
|
98
|
+
wait_for_processing = true unless frame_time_code.nil?
|
99
|
+
if wait_for_processing
|
99
100
|
loop do
|
100
101
|
unless preview.video_url.nil?
|
101
102
|
puts("Preview processing complete!") if Spaceship::Globals.verbose?
|
@@ -63,8 +63,37 @@ module Spaceship
|
|
63
63
|
return resp.to_models
|
64
64
|
end
|
65
65
|
|
66
|
-
def
|
67
|
-
return Spaceship::ConnectAPI
|
66
|
+
def self.get(app_preview_set_id: nil, includes: "appPreviews")
|
67
|
+
return Spaceship::ConnectAPI.get_app_preview_set(app_preview_set_id: app_preview_set_id, filter: nil, includes: includes, limit: nil, sort: nil).first
|
68
|
+
end
|
69
|
+
|
70
|
+
def upload_preview(path: nil, wait_for_processing: true, position: nil, frame_time_code: nil)
|
71
|
+
# Upload preview
|
72
|
+
preview = Spaceship::ConnectAPI::AppPreview.create(app_preview_set_id: id, path: path, wait_for_processing: wait_for_processing, frame_time_code: frame_time_code)
|
73
|
+
|
74
|
+
# Reposition (if specified)
|
75
|
+
unless position.nil?
|
76
|
+
# Get all app preview ids
|
77
|
+
set = AppPreviewSet.get(app_preview_set_id: id)
|
78
|
+
app_preview_ids = set.app_previews.map(&:id)
|
79
|
+
|
80
|
+
# Remove new uploaded preview
|
81
|
+
app_preview_ids.delete(preview.id)
|
82
|
+
|
83
|
+
# Insert preview at specified position
|
84
|
+
app_preview_ids = app_preview_ids.insert(position, preview.id).compact
|
85
|
+
|
86
|
+
# Reorder previews
|
87
|
+
reorder_previews(app_preview_ids: app_preview_ids)
|
88
|
+
end
|
89
|
+
|
90
|
+
return preview
|
91
|
+
end
|
92
|
+
|
93
|
+
def reorder_previews(app_preview_ids: nil)
|
94
|
+
Spaceship::ConnectAPI.patch_app_preview_set_previews(app_preview_set_id: id, app_preview_ids: app_preview_ids)
|
95
|
+
|
96
|
+
return Spaceship::ConnectAPI.get_app_preview_set(app_preview_set_id: id, includes: "appPreviews").first
|
68
97
|
end
|
69
98
|
end
|
70
99
|
end
|
@@ -117,8 +117,30 @@ module Spaceship
|
|
117
117
|
return resp.to_models
|
118
118
|
end
|
119
119
|
|
120
|
-
def
|
121
|
-
return Spaceship::ConnectAPI
|
120
|
+
def self.get(app_screenshot_set_id: nil, includes: "appScreenshots")
|
121
|
+
return Spaceship::ConnectAPI.get_app_screenshot_set(app_screenshot_set_id: app_screenshot_set_id, filter: nil, includes: includes, limit: nil, sort: nil).first
|
122
|
+
end
|
123
|
+
|
124
|
+
def upload_screenshot(path: nil, wait_for_processing: true, position: nil)
|
125
|
+
screenshot = Spaceship::ConnectAPI::AppScreenshot.create(app_screenshot_set_id: id, path: path, wait_for_processing: wait_for_processing)
|
126
|
+
|
127
|
+
# Reposition (if specified)
|
128
|
+
unless position.nil?
|
129
|
+
# Get all app preview ids
|
130
|
+
set = AppScreenshotSet.get(app_screenshot_set_id: id)
|
131
|
+
app_screenshot_ids = set.app_screenshots.map(&:id)
|
132
|
+
|
133
|
+
# Remove new uploaded screenshot
|
134
|
+
app_screenshot_ids.delete(screenshot.id)
|
135
|
+
|
136
|
+
# Insert screenshot at specified position
|
137
|
+
app_screenshot_ids = app_screenshot_ids.insert(position, screenshot.id).compact
|
138
|
+
|
139
|
+
# Reorder screenshots
|
140
|
+
reorder_screenshots(app_screenshot_ids: app_screenshot_ids)
|
141
|
+
end
|
142
|
+
|
143
|
+
return screenshot
|
122
144
|
end
|
123
145
|
|
124
146
|
def reorder_screenshots(app_screenshot_ids: nil)
|
@@ -0,0 +1,64 @@
|
|
1
|
+
require_relative '../model'
|
2
|
+
module Spaceship
|
3
|
+
class ConnectAPI
|
4
|
+
class SandboxTester
|
5
|
+
include Spaceship::ConnectAPI::Model
|
6
|
+
|
7
|
+
attr_accessor :first_name
|
8
|
+
attr_accessor :last_name
|
9
|
+
attr_accessor :email
|
10
|
+
attr_accessor :password
|
11
|
+
attr_accessor :confirm_password
|
12
|
+
attr_accessor :secret_question
|
13
|
+
attr_accessor :secret_answer
|
14
|
+
attr_accessor :birth_date # 1980-03-01
|
15
|
+
attr_accessor :app_store_territory
|
16
|
+
attr_accessor :apple_pay_compatible
|
17
|
+
|
18
|
+
attr_mapping({
|
19
|
+
"firstName" => "first_name",
|
20
|
+
"lastName" => "last_name",
|
21
|
+
"email" => "email",
|
22
|
+
"password" => "password",
|
23
|
+
"confirmPassword" => "confirm_password",
|
24
|
+
"secretQuestion" => "secret_question",
|
25
|
+
"secretAnswer" => "secret_answer",
|
26
|
+
"birthDate" => "birth_date",
|
27
|
+
"appStoreTerritory" => "app_store_territory",
|
28
|
+
"applePayCompatible" => "apple_pay_compatible"
|
29
|
+
})
|
30
|
+
|
31
|
+
def self.type
|
32
|
+
return "sandboxTesters"
|
33
|
+
end
|
34
|
+
|
35
|
+
#
|
36
|
+
# API
|
37
|
+
#
|
38
|
+
|
39
|
+
def self.all(filter: {}, includes: nil, limit: 2000, sort: nil)
|
40
|
+
resps = Spaceship::ConnectAPI.get_sandbox_testers(filter: filter, includes: includes).all_pages
|
41
|
+
return resps.flat_map(&:to_models)
|
42
|
+
end
|
43
|
+
|
44
|
+
def self.create(first_name: nil, last_name: nil, email: nil, password: nil, confirm_password: nil, secret_question: nil, secret_answer: nil, birth_date: nil, app_store_territory: nil)
|
45
|
+
attributes = {
|
46
|
+
firstName: first_name,
|
47
|
+
lastName: last_name,
|
48
|
+
email: email,
|
49
|
+
password: password,
|
50
|
+
confirmPassword: confirm_password,
|
51
|
+
secretQuestion: secret_question,
|
52
|
+
secretAnswer: secret_answer,
|
53
|
+
birthDate: birth_date,
|
54
|
+
appStoreTerritory: app_store_territory
|
55
|
+
}
|
56
|
+
return Spaceship::ConnectAPI.post_sandbox_tester(attributes: attributes).first
|
57
|
+
end
|
58
|
+
|
59
|
+
def delete!
|
60
|
+
Spaceship::ConnectAPI.delete_sandbox_tester(sandbox_tester_id: id)
|
61
|
+
end
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
@@ -241,6 +241,11 @@ module Spaceship
|
|
241
241
|
Client.instance.get("appPreviewSets", params)
|
242
242
|
end
|
243
243
|
|
244
|
+
def get_app_preview_set(app_preview_set_id: nil, filter: {}, includes: nil, limit: nil, sort: nil)
|
245
|
+
params = Client.instance.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
|
246
|
+
Client.instance.get("appPreviewSets/#{app_preview_set_id}", params)
|
247
|
+
end
|
248
|
+
|
244
249
|
def post_app_preview_set(app_store_version_localization_id: nil, attributes: {})
|
245
250
|
body = {
|
246
251
|
data: {
|
@@ -260,6 +265,21 @@ module Spaceship
|
|
260
265
|
Client.instance.post("appPreviewSets", body)
|
261
266
|
end
|
262
267
|
|
268
|
+
def patch_app_preview_set_previews(app_preview_set_id: nil, app_preview_ids: nil)
|
269
|
+
app_preview_ids ||= []
|
270
|
+
|
271
|
+
body = {
|
272
|
+
data: app_preview_ids.map do |app_preview_id|
|
273
|
+
{
|
274
|
+
type: "appPreviews",
|
275
|
+
id: app_preview_id
|
276
|
+
}
|
277
|
+
end
|
278
|
+
}
|
279
|
+
|
280
|
+
Client.instance.patch("appPreviewSets/#{app_preview_set_id}/relationships/appPreviews", body)
|
281
|
+
end
|
282
|
+
|
263
283
|
#
|
264
284
|
# appPrices
|
265
285
|
#
|
@@ -846,6 +866,31 @@ module Spaceship
|
|
846
866
|
Client.instance.delete("idfaDeclarations/#{idfa_declaration_id}", params)
|
847
867
|
end
|
848
868
|
|
869
|
+
#
|
870
|
+
# sandboxTesters
|
871
|
+
#
|
872
|
+
|
873
|
+
def get_sandbox_testers(filter: nil, includes: nil, limit: nil, sort: nil)
|
874
|
+
params = Client.instance.build_params(filter: filter, includes: includes, limit: limit, sort: sort)
|
875
|
+
Client.instance.get("sandboxTesters", params)
|
876
|
+
end
|
877
|
+
|
878
|
+
def post_sandbox_tester(attributes: {})
|
879
|
+
body = {
|
880
|
+
data: {
|
881
|
+
type: "sandboxTesters",
|
882
|
+
attributes: attributes
|
883
|
+
}
|
884
|
+
}
|
885
|
+
|
886
|
+
Client.instance.post("sandboxTesters", body)
|
887
|
+
end
|
888
|
+
|
889
|
+
def delete_sandbox_tester(sandbox_tester_id: nil)
|
890
|
+
params = Client.instance.build_params(filter: nil, includes: nil, limit: nil, sort: nil)
|
891
|
+
Client.instance.delete("sandboxTesters/#{sandbox_tester_id}", params)
|
892
|
+
end
|
893
|
+
|
849
894
|
#
|
850
895
|
# territories
|
851
896
|
#
|
metadata
CHANGED
@@ -1,35 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.150.
|
4
|
+
version: 2.150.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
- Joshua Liebowitz
|
8
|
-
- Luka Mirosevic
|
9
|
-
- Kohki Miki
|
10
|
-
- Aaron Brager
|
11
|
-
- Matthew Ellis
|
12
|
-
- Jimmy Dee
|
13
|
-
- Jorge Revuelta H
|
14
|
-
- Manu Wallner
|
15
|
-
- Josh Holtz
|
16
7
|
- Fumiya Nakamura
|
17
|
-
-
|
8
|
+
- Jimmy Dee
|
9
|
+
- Matthew Ellis
|
18
10
|
- Jan Piotrowski
|
19
|
-
- Daniel Jankowski
|
20
|
-
- Olivier Halligon
|
21
|
-
- Max Ott
|
22
11
|
- Felix Krause
|
23
|
-
-
|
24
|
-
- Danielle Tomlinson
|
12
|
+
- Luka Mirosevic
|
25
13
|
- Jérôme Lacoste
|
26
|
-
-
|
14
|
+
- Daniel Jankowski
|
15
|
+
- Danielle Tomlinson
|
16
|
+
- Maksym Grebenets
|
17
|
+
- Jorge Revuelta H
|
18
|
+
- Aaron Brager
|
27
19
|
- Helmut Januschka
|
20
|
+
- Joshua Liebowitz
|
21
|
+
- Manu Wallner
|
22
|
+
- Max Ott
|
23
|
+
- Andrew McBurney
|
28
24
|
- Stefan Natchev
|
29
|
-
|
25
|
+
- Josh Holtz
|
26
|
+
- Kohki Miki
|
27
|
+
- Olivier Halligon
|
28
|
+
- Iulian Onofrei
|
29
|
+
autorequire:
|
30
30
|
bindir: bin
|
31
31
|
cert_chain: []
|
32
|
-
date: 2020-07-
|
32
|
+
date: 2020-07-04 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: slack-notifier
|
@@ -977,6 +977,11 @@ files:
|
|
977
977
|
- deliver/lib/assets/ScreenshotsHelp
|
978
978
|
- deliver/lib/assets/summary.html.erb
|
979
979
|
- deliver/lib/deliver.rb
|
980
|
+
- deliver/lib/deliver/.commands_generator.rb.swp
|
981
|
+
- deliver/lib/deliver/.download_screenshots.rb.swp
|
982
|
+
- deliver/lib/deliver/.submit_for_review.rb.swp
|
983
|
+
- deliver/lib/deliver/.upload_metadata.rb.swp
|
984
|
+
- deliver/lib/deliver/.upload_screenshots.rb.swp
|
980
985
|
- deliver/lib/deliver/app_screenshot.rb
|
981
986
|
- deliver/lib/deliver/commands_generator.rb
|
982
987
|
- deliver/lib/deliver/detect_values.rb
|
@@ -1013,9 +1018,6 @@ files:
|
|
1013
1018
|
- fastlane/lib/fastlane.rb
|
1014
1019
|
- fastlane/lib/fastlane/action.rb
|
1015
1020
|
- fastlane/lib/fastlane/action_collector.rb
|
1016
|
-
- fastlane/lib/fastlane/actions/.hockey.rb.swp
|
1017
|
-
- fastlane/lib/fastlane/actions/.slack.rb.swp
|
1018
|
-
- fastlane/lib/fastlane/actions/.update_project_provisioning.rb.swp
|
1019
1021
|
- fastlane/lib/fastlane/actions/README.md
|
1020
1022
|
- fastlane/lib/fastlane/actions/actions_helper.rb
|
1021
1023
|
- fastlane/lib/fastlane/actions/adb.rb
|
@@ -1352,7 +1354,6 @@ files:
|
|
1352
1354
|
- fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.pbxproj
|
1353
1355
|
- fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/contents.xcworkspacedata
|
1354
1356
|
- fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist
|
1355
|
-
- fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcuserdata/josh.xcuserdatad/UserInterfaceState.xcuserstate
|
1356
1357
|
- fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/xcshareddata/xcschemes/FastlaneRunner.xcscheme
|
1357
1358
|
- fastlane/swift/FastlaneSwiftRunner/README.txt
|
1358
1359
|
- fastlane/swift/Gymfile.swift
|
@@ -1439,6 +1440,7 @@ files:
|
|
1439
1440
|
- frameit/README.md
|
1440
1441
|
- frameit/lib/assets/empty.png
|
1441
1442
|
- frameit/lib/frameit.rb
|
1443
|
+
- frameit/lib/frameit/.editor.rb.swp
|
1442
1444
|
- frameit/lib/frameit/commands_generator.rb
|
1443
1445
|
- frameit/lib/frameit/config_parser.rb
|
1444
1446
|
- frameit/lib/frameit/dependency_checker.rb
|
@@ -1509,7 +1511,6 @@ files:
|
|
1509
1511
|
- pem/lib/pem/options.rb
|
1510
1512
|
- pilot/README.md
|
1511
1513
|
- pilot/lib/pilot.rb
|
1512
|
-
- pilot/lib/pilot/.manager.rb.swp
|
1513
1514
|
- pilot/lib/pilot/build_manager.rb
|
1514
1515
|
- pilot/lib/pilot/commands_generator.rb
|
1515
1516
|
- pilot/lib/pilot/features.rb
|
@@ -1637,15 +1638,17 @@ files:
|
|
1637
1638
|
- spaceship/lib/assets/languageMapping.json
|
1638
1639
|
- spaceship/lib/assets/languageMappingReadable.json
|
1639
1640
|
- spaceship/lib/spaceship.rb
|
1641
|
+
- spaceship/lib/spaceship/.DS_Store
|
1640
1642
|
- spaceship/lib/spaceship/babosa_fix.rb
|
1641
1643
|
- spaceship/lib/spaceship/base.rb
|
1642
1644
|
- spaceship/lib/spaceship/client.rb
|
1643
1645
|
- spaceship/lib/spaceship/commands_generator.rb
|
1644
1646
|
- spaceship/lib/spaceship/connect_api.rb
|
1645
|
-
- spaceship/lib/spaceship/connect_api/.
|
1647
|
+
- spaceship/lib/spaceship/connect_api/.file_uploader.rb.swp
|
1646
1648
|
- spaceship/lib/spaceship/connect_api/client.rb
|
1647
1649
|
- spaceship/lib/spaceship/connect_api/file_uploader.rb
|
1648
1650
|
- spaceship/lib/spaceship/connect_api/model.rb
|
1651
|
+
- spaceship/lib/spaceship/connect_api/models/.app_screenshot.rb.swp
|
1649
1652
|
- spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb
|
1650
1653
|
- spaceship/lib/spaceship/connect_api/models/app.rb
|
1651
1654
|
- spaceship/lib/spaceship/connect_api/models/app_category.rb
|
@@ -1684,6 +1687,7 @@ files:
|
|
1684
1687
|
- spaceship/lib/spaceship/connect_api/models/pre_release_version.rb
|
1685
1688
|
- spaceship/lib/spaceship/connect_api/models/profile.rb
|
1686
1689
|
- spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb
|
1690
|
+
- spaceship/lib/spaceship/connect_api/models/sandbox_tester.rb
|
1687
1691
|
- spaceship/lib/spaceship/connect_api/models/territory.rb
|
1688
1692
|
- spaceship/lib/spaceship/connect_api/models/user.rb
|
1689
1693
|
- spaceship/lib/spaceship/connect_api/provisioning/client.rb
|
@@ -1814,7 +1818,7 @@ licenses:
|
|
1814
1818
|
- MIT
|
1815
1819
|
metadata:
|
1816
1820
|
docs_url: https://docs.fastlane.tools
|
1817
|
-
post_install_message:
|
1821
|
+
post_install_message:
|
1818
1822
|
rdoc_options: []
|
1819
1823
|
require_paths:
|
1820
1824
|
- credentials_manager/lib
|
@@ -1846,8 +1850,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1846
1850
|
- !ruby/object:Gem::Version
|
1847
1851
|
version: '0'
|
1848
1852
|
requirements: []
|
1849
|
-
rubygems_version: 3.0.
|
1850
|
-
signing_key:
|
1853
|
+
rubygems_version: 3.0.6
|
1854
|
+
signing_key:
|
1851
1855
|
specification_version: 4
|
1852
1856
|
summary: The easiest way to automate beta deployments and releases for your iOS and
|
1853
1857
|
Android apps
|