fastlane 2.128.1 → 2.129.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 +5 -5
- data/README.md +74 -74
- data/deliver/lib/deliver/submit_for_review.rb +1 -1
- data/fastlane/lib/fastlane/actions/appetize_viewing_url_generator.rb +1 -1
- data/fastlane/lib/fastlane/actions/automatic_code_signing.rb +1 -1
- data/fastlane/lib/fastlane/actions/commit_github_file.rb +1 -1
- data/fastlane/lib/fastlane/actions/get_version_number.rb +18 -2
- data/fastlane/lib/fastlane/actions/github_api.rb +1 -1
- data/fastlane/lib/fastlane/actions/gradle.rb +26 -7
- data/fastlane/lib/fastlane/actions/import_from_git.rb +1 -1
- data/fastlane/lib/fastlane/actions/pod_push.rb +20 -10
- data/fastlane/lib/fastlane/actions/puts.rb +1 -1
- data/fastlane/lib/fastlane/actions/sonar.rb +18 -0
- data/fastlane/lib/fastlane/actions/update_fastlane.rb +1 -1
- data/fastlane/lib/fastlane/commands_generator.rb +1 -1
- data/fastlane/lib/fastlane/helper/adb_helper.rb +5 -0
- data/fastlane/lib/fastlane/helper/crashlytics_helper.rb +11 -5
- data/fastlane/lib/fastlane/swift_fastlane_api_generator.rb +4 -0
- data/fastlane/lib/fastlane/swift_fastlane_function.rb +11 -7
- data/fastlane/lib/fastlane/version.rb +1 -1
- data/fastlane/swift/Deliverfile.swift +1 -1
- data/fastlane/swift/Fastlane.swift +290 -284
- data/fastlane/swift/Gymfile.swift +1 -1
- data/fastlane/swift/GymfileProtocol.swift +3 -3
- data/fastlane/swift/Matchfile.swift +1 -1
- data/fastlane/swift/Precheckfile.swift +1 -1
- data/fastlane/swift/Scanfile.swift +1 -1
- data/fastlane/swift/ScanfileProtocol.swift +3 -3
- data/fastlane/swift/Screengrabfile.swift +1 -1
- data/fastlane/swift/Snapshotfile.swift +1 -1
- data/fastlane_core/lib/fastlane_core/analytics/analytics_event_builder.rb +1 -1
- data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +1 -1
- data/frameit/lib/frameit/editor.rb +1 -1
- data/gym/lib/gym/options.rb +1 -1
- data/match/lib/match/nuke.rb +1 -1
- data/match/lib/match/runner.rb +2 -2
- data/match/lib/match/storage/interface.rb +1 -1
- data/scan/lib/scan/options.rb +1 -1
- data/scan/lib/scan/runner.rb +1 -1
- data/snapshot/lib/assets/SnapshotHelper.swift +3 -3
- data/spaceship/lib/spaceship/connect_api/models/beta_tester_metric.rb +1 -0
- data/spaceship/lib/spaceship/du/du_client.rb +4 -0
- data/spaceship/lib/spaceship/portal/certificate.rb +15 -1
- data/spaceship/lib/spaceship/spaceauth_runner.rb +1 -1
- data/spaceship/lib/spaceship/test_flight/tester.rb +1 -1
- data/spaceship/lib/spaceship/tunes/build_details.rb +160 -18
- data/spaceship/lib/spaceship/tunes/display_family.rb +3 -3
- data/spaceship/lib/spaceship/tunes/iap.rb +2 -0
- data/spaceship/lib/spaceship/tunes/iap_detail.rb +17 -0
- data/spaceship/lib/spaceship/tunes/tunes_client.rb +37 -1
- data/supply/lib/supply/client.rb +1 -1
- metadata +17 -18
@@ -5,7 +5,7 @@ module Spaceship
|
|
5
5
|
# A definition of different styled displays used by devices
|
6
6
|
# that App Store Connect supports storing screenshots.
|
7
7
|
# Display styles often only vary based on screen resolution
|
8
|
-
# however other aspects of a displays physical
|
8
|
+
# however other aspects of a displays physical appearance are
|
9
9
|
# also factored (i.e if the home indicator is provided via
|
10
10
|
# a hardware button or a software interface).
|
11
11
|
class DisplayFamily
|
@@ -15,12 +15,12 @@ module Spaceship
|
|
15
15
|
# Spaceship::Tunes::AppScreenshot#device_type attribute.
|
16
16
|
attr_accessor :name
|
17
17
|
|
18
|
-
# The user friendly name of this
|
18
|
+
# The user friendly name of this definition.
|
19
19
|
#
|
20
20
|
# Source: Media Manager in App Store Connect.
|
21
21
|
attr_accessor :friendly_name
|
22
22
|
|
23
|
-
# The user friendly category for this
|
23
|
+
# The user friendly category for this definition (i.e iPhone,
|
24
24
|
# Apple TV or Desktop).
|
25
25
|
attr_accessor :friendly_category_name
|
26
26
|
|
@@ -65,6 +65,7 @@ module Spaceship
|
|
65
65
|
reference_name: nil,
|
66
66
|
product_id: nil,
|
67
67
|
cleared_for_sale: true,
|
68
|
+
merch_screenshot: nil,
|
68
69
|
review_notes: nil,
|
69
70
|
review_screenshot: nil,
|
70
71
|
pricing_intervals: nil,
|
@@ -78,6 +79,7 @@ module Spaceship
|
|
78
79
|
reference_name: reference_name,
|
79
80
|
product_id: product_id,
|
80
81
|
cleared_for_sale: cleared_for_sale,
|
82
|
+
merch_screenshot: merch_screenshot,
|
81
83
|
review_notes: review_notes,
|
82
84
|
review_screenshot: review_screenshot,
|
83
85
|
pricing_intervals: pricing_intervals,
|
@@ -30,6 +30,10 @@ module Spaceship
|
|
30
30
|
# @return (Bool) Cleared for sale flag
|
31
31
|
attr_accessor :cleared_for_sale
|
32
32
|
|
33
|
+
# @return (Hash) app store promotion image (optional)
|
34
|
+
attr_accessor :merch_screenshot
|
35
|
+
|
36
|
+
# @return (Hash) app review screenshot (required)
|
33
37
|
attr_accessor :review_screenshot
|
34
38
|
|
35
39
|
# @return (String) the notes for the review team
|
@@ -142,6 +146,12 @@ module Spaceship
|
|
142
146
|
Tunes::IAPStatus.get_from_string(raw_data["versions"].first["status"])
|
143
147
|
end
|
144
148
|
|
149
|
+
# @return (Hash) Hash containing existing promotional image data
|
150
|
+
def merch_screenshot
|
151
|
+
return nil unless raw_data && raw_data["versions"] && raw_data["versions"].first && raw_data["versions"].first["merch"] && raw_data["versions"].first["merch"]["images"].first["image"]["value"]
|
152
|
+
raw_data["versions"].first["merch"]["images"].first["image"]["value"]
|
153
|
+
end
|
154
|
+
|
145
155
|
# @return (Hash) Hash containing existing review screenshot data
|
146
156
|
def review_screenshot
|
147
157
|
return nil unless raw_data && raw_data["versions"] && raw_data["versions"].first && raw_data["versions"].first["reviewScreenshot"] && raw_data['versions'].first["reviewScreenshot"]["value"]
|
@@ -172,6 +182,13 @@ module Spaceship
|
|
172
182
|
raw_data.set(["pricingIntervals"], raw_pricing_intervals)
|
173
183
|
@raw_pricing_data["subscriptions"] = raw_pricing_intervals if @raw_pricing_data
|
174
184
|
|
185
|
+
if @merch_screenshot
|
186
|
+
# Upload App Store Promotional image (Optional)
|
187
|
+
upload_file = UploadFile.from_path(@merch_screenshot)
|
188
|
+
merch_data = client.upload_purchase_merch_screenshot(application.apple_id, upload_file)
|
189
|
+
raw_data["versions"][0]["merch"] = merch_data
|
190
|
+
end
|
191
|
+
|
175
192
|
if @review_screenshot
|
176
193
|
# Upload Screenshot
|
177
194
|
upload_file = UploadFile.from_path(@review_screenshot)
|
@@ -791,6 +791,35 @@ module Spaceship
|
|
791
791
|
du_client.upload_watch_icon(app_version, upload_image, content_provider_id, sso_token_for_image)
|
792
792
|
end
|
793
793
|
|
794
|
+
# Uploads an In-App-Purchase Promotional image
|
795
|
+
# @param upload_image (UploadFile): The icon to upload
|
796
|
+
# @return [JSON] the image data, ready to be added to an In-App-Purchase
|
797
|
+
def upload_purchase_merch_screenshot(app_id, upload_image)
|
798
|
+
data = du_client.upload_purchase_merch_screenshot(app_id, upload_image, content_provider_id, sso_token_for_image)
|
799
|
+
{
|
800
|
+
"images" => [
|
801
|
+
{
|
802
|
+
"id" => nil,
|
803
|
+
"image" => {
|
804
|
+
"value" => {
|
805
|
+
"assetToken" => data["token"],
|
806
|
+
"originalFileName" => upload_image.file_name,
|
807
|
+
"height" => data["height"],
|
808
|
+
"width" => data["width"],
|
809
|
+
"checksum" => data["md5"]
|
810
|
+
},
|
811
|
+
"isEditable" => true,
|
812
|
+
"isREquired" => false,
|
813
|
+
"errorKeys" => nil
|
814
|
+
},
|
815
|
+
"status" => "proposed"
|
816
|
+
}
|
817
|
+
],
|
818
|
+
"showByDefault" => true,
|
819
|
+
"isActive" => false
|
820
|
+
}
|
821
|
+
end
|
822
|
+
|
794
823
|
# Uploads an In-App-Purchase Review screenshot
|
795
824
|
# @param app_id (AppId): The id of the app
|
796
825
|
# @param upload_image (UploadFile): The icon to upload
|
@@ -1304,7 +1333,7 @@ module Spaceship
|
|
1304
1333
|
end
|
1305
1334
|
|
1306
1335
|
# Creates an In-App-Purchases
|
1307
|
-
def create_iap!(app_id: nil, type: nil, versions: nil, reference_name: nil, product_id: nil, cleared_for_sale: true, review_notes: nil, review_screenshot: nil, pricing_intervals: nil, family_id: nil, subscription_duration: nil, subscription_free_trial: nil)
|
1336
|
+
def create_iap!(app_id: nil, type: nil, versions: nil, reference_name: nil, product_id: nil, cleared_for_sale: true, merch_screenshot: nil, review_notes: nil, review_screenshot: nil, pricing_intervals: nil, family_id: nil, subscription_duration: nil, subscription_free_trial: nil)
|
1308
1337
|
# Load IAP Template based on Type
|
1309
1338
|
type ||= "consumable"
|
1310
1339
|
r = request(:get, "ra/apps/#{app_id}/iaps/#{type}/template")
|
@@ -1348,6 +1377,13 @@ module Spaceship
|
|
1348
1377
|
data["versions"][0]["details"]["value"] = versions_array
|
1349
1378
|
data['versions'][0]["reviewNotes"] = { value: review_notes }
|
1350
1379
|
|
1380
|
+
if merch_screenshot
|
1381
|
+
# Upload App Store Promotional image (Optional)
|
1382
|
+
upload_file = UploadFile.from_path(merch_screenshot)
|
1383
|
+
merch_data = upload_purchase_merch_screenshot(app_id, upload_file)
|
1384
|
+
data["versions"][0]["merch"] = merch_data
|
1385
|
+
end
|
1386
|
+
|
1351
1387
|
if review_screenshot
|
1352
1388
|
# Upload Screenshot:
|
1353
1389
|
upload_file = UploadFile.from_path(review_screenshot)
|
data/supply/lib/supply/client.rb
CHANGED
@@ -312,7 +312,7 @@ module Supply
|
|
312
312
|
|
313
313
|
track_version_codes = apk_version_code.kind_of?(Array) ? apk_version_code : [apk_version_code]
|
314
314
|
|
315
|
-
# This change
|
315
|
+
# This change happened on 2018-04-24
|
316
316
|
# rollout cannot be sent on any other track besides "rollout"
|
317
317
|
# https://github.com/fastlane/fastlane/issues/12372
|
318
318
|
rollout = nil unless track == "rollout"
|
metadata
CHANGED
@@ -1,33 +1,33 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fastlane
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.129.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
|
-
-
|
8
|
-
- Andrew McBurney
|
9
|
-
- Danielle Tomlinson
|
10
|
-
- Kohki Miki
|
11
|
-
- Manu Wallner
|
7
|
+
- Jorge Revuelta H
|
12
8
|
- Olivier Halligon
|
13
|
-
-
|
9
|
+
- Aaron Brager
|
10
|
+
- Joshua Liebowitz
|
11
|
+
- Fumiya Nakamura
|
12
|
+
- Kohki Miki
|
14
13
|
- Jan Piotrowski
|
14
|
+
- Jimmy Dee
|
15
|
+
- Andrew McBurney
|
16
|
+
- Maksym Grebenets
|
17
|
+
- Stefan Natchev
|
15
18
|
- Matthew Ellis
|
16
|
-
-
|
19
|
+
- Jérôme Lacoste
|
17
20
|
- Iulian Onofrei
|
18
|
-
-
|
19
|
-
-
|
21
|
+
- Danielle Tomlinson
|
22
|
+
- Manu Wallner
|
20
23
|
- Felix Krause
|
21
|
-
-
|
22
|
-
-
|
23
|
-
- Jérôme Lacoste
|
24
|
-
- Joshua Liebowitz
|
24
|
+
- Luka Mirosevic
|
25
|
+
- Helmut Januschka
|
25
26
|
- Josh Holtz
|
26
|
-
- Maksym Grebenets
|
27
27
|
autorequire:
|
28
28
|
bindir: bin
|
29
29
|
cert_chain: []
|
30
|
-
date: 2019-
|
30
|
+
date: 2019-08-13 00:00:00.000000000 Z
|
31
31
|
dependencies:
|
32
32
|
- !ruby/object:Gem::Dependency
|
33
33
|
name: slack-notifier
|
@@ -1776,8 +1776,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1776
1776
|
- !ruby/object:Gem::Version
|
1777
1777
|
version: '0'
|
1778
1778
|
requirements: []
|
1779
|
-
|
1780
|
-
rubygems_version: 2.5.2.3
|
1779
|
+
rubygems_version: 3.0.3
|
1781
1780
|
signing_key:
|
1782
1781
|
specification_version: 4
|
1783
1782
|
summary: The easiest way to automate beta deployments and releases for your iOS and
|