fastlane 2.149.1 → 2.150.0.rc5

Sign up to get free protection for your applications and to get access to all the features.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/deliver/lib/deliver.rb +0 -1
  3. data/deliver/lib/deliver/app_screenshot.rb +26 -25
  4. data/deliver/lib/deliver/download_screenshots.rb +46 -26
  5. data/deliver/lib/deliver/options.rb +6 -11
  6. data/deliver/lib/deliver/runner.rb +7 -21
  7. data/deliver/lib/deliver/setup.rb +5 -30
  8. data/deliver/lib/deliver/submit_for_review.rb +170 -86
  9. data/deliver/lib/deliver/upload_metadata.rb +355 -143
  10. data/deliver/lib/deliver/upload_price_tier.rb +22 -8
  11. data/deliver/lib/deliver/upload_screenshots.rb +140 -39
  12. data/{scan/lib/scan/.test_command_generator.rb.swp → fastlane/lib/fastlane/actions/.hockey.rb.swp} +0 -0
  13. data/fastlane/lib/fastlane/actions/.slack.rb.swp +0 -0
  14. data/{snapshot/lib/snapshot/.test_command_generator_base.rb.swp → fastlane/lib/fastlane/actions/.update_project_provisioning.rb.swp} +0 -0
  15. data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +1 -1
  16. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +81 -96
  17. data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +3 -2
  18. data/fastlane/lib/fastlane/actions/download_dsyms.rb +7 -1
  19. data/fastlane/lib/fastlane/actions/google_play_track_release_names.rb +74 -0
  20. data/fastlane/lib/fastlane/actions/set_changelog.rb +23 -20
  21. data/fastlane/lib/fastlane/actions/slack.rb +1 -1
  22. data/fastlane/lib/fastlane/actions/spm.rb +7 -0
  23. data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +1 -32
  24. data/fastlane/lib/fastlane/lane.rb +3 -3
  25. data/fastlane/lib/fastlane/swift_fastlane_function.rb +8 -4
  26. data/fastlane/lib/fastlane/version.rb +1 -1
  27. data/fastlane/swift/ControlCommand.swift +1 -0
  28. data/fastlane/swift/Fastlane.swift +48 -12
  29. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcuserdata/josh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  30. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/xcshareddata/xcschemes/FastlaneRunner.xcscheme +3 -9
  31. data/fastlane/swift/LaneFileProtocol.swift +2 -5
  32. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  33. data/fastlane/swift/RubyCommand.swift +29 -6
  34. data/fastlane/swift/RubyCommandable.swift +1 -0
  35. data/fastlane/swift/Runner.swift +85 -13
  36. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  37. data/fastlane/swift/SnapshotfileProtocol.swift +3 -3
  38. data/fastlane/swift/SocketClient.swift +76 -45
  39. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  40. data/fastlane/swift/SocketResponse.swift +1 -0
  41. data/fastlane_core/lib/fastlane_core/build_watcher.rb +4 -4
  42. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +1 -3
  43. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +89 -52
  44. data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +7 -0
  45. data/frameit/lib/frameit/device_types.rb +100 -100
  46. data/pilot/lib/pilot/.manager.rb.swp +0 -0
  47. data/produce/lib/produce/itunes_connect.rb +59 -21
  48. data/produce/lib/produce/options.rb +3 -3
  49. data/sigh/lib/assets/resign.sh +7 -7
  50. data/snapshot/lib/assets/SnapshotHelper.swift +5 -5
  51. data/snapshot/lib/assets/SnapshotHelperXcode8.swift +3 -3
  52. data/snapshot/lib/snapshot/options.rb +0 -1
  53. data/snapshot/lib/snapshot/reports_generator.rb +8 -1
  54. data/spaceship/lib/spaceship/client.rb +4 -3
  55. data/spaceship/lib/spaceship/connect_api.rb +25 -2
  56. data/spaceship/lib/spaceship/connect_api/.DS_Store +0 -0
  57. data/spaceship/lib/spaceship/connect_api/client.rb +97 -31
  58. data/spaceship/lib/spaceship/connect_api/file_uploader.rb +98 -0
  59. data/spaceship/lib/spaceship/connect_api/model.rb +1 -1
  60. data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +113 -0
  61. data/spaceship/lib/spaceship/connect_api/models/app.rb +135 -3
  62. data/spaceship/lib/spaceship/connect_api/models/app_category.rb +94 -0
  63. data/spaceship/lib/spaceship/connect_api/models/app_info.rb +67 -0
  64. data/spaceship/lib/spaceship/connect_api/models/app_info_localization.rb +38 -0
  65. data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +129 -0
  66. data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +71 -0
  67. data/spaceship/lib/spaceship/connect_api/models/app_price.rb +22 -0
  68. data/spaceship/lib/spaceship/connect_api/models/app_price_tier.rb +12 -0
  69. data/spaceship/lib/spaceship/connect_api/models/app_review_attachment.rb +71 -0
  70. data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +146 -0
  71. data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +125 -0
  72. data/spaceship/lib/spaceship/connect_api/models/app_store_review_detail.rb +51 -0
  73. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +183 -0
  74. data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +86 -0
  75. data/spaceship/lib/spaceship/connect_api/models/app_store_version_phased_release.rb +36 -0
  76. data/spaceship/lib/spaceship/connect_api/models/app_store_version_submission.rb +26 -0
  77. data/spaceship/lib/spaceship/connect_api/models/build.rb +4 -0
  78. data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +40 -0
  79. data/spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb +26 -0
  80. data/spaceship/lib/spaceship/connect_api/models/territory.rb +27 -0
  81. data/spaceship/lib/spaceship/connect_api/models/user.rb +2 -1
  82. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +10 -3
  83. data/spaceship/lib/spaceship/connect_api/tunes/client.rb +33 -0
  84. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +844 -0
  85. data/spaceship/lib/spaceship/connect_api/users/users.rb +13 -0
  86. data/spaceship/lib/spaceship/spaceauth_runner.rb +2 -2
  87. data/supply/lib/supply/client.rb +19 -0
  88. data/supply/lib/supply/reader.rb +16 -0
  89. metadata +34 -22
  90. data/deliver/lib/deliver/upload_assets.rb +0 -27
@@ -0,0 +1,125 @@
1
+ require_relative '../model'
2
+ require_relative './app_screenshot'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppScreenshotSet
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :screenshot_display_type
10
+
11
+ attr_accessor :app_screenshots
12
+
13
+ module DisplayType
14
+ APP_IPHONE_35 = "APP_IPHONE_35"
15
+ APP_IPHONE_40 = "APP_IPHONE_40"
16
+ APP_IPHONE_47 = "APP_IPHONE_47"
17
+ APP_IPHONE_55 = "APP_IPHONE_55"
18
+ APP_IPHONE_58 = "APP_IPHONE_58"
19
+ APP_IPHONE_65 = "APP_IPHONE_65"
20
+
21
+ APP_IPAD_97 = "APP_IPAD_97"
22
+ APP_IPAD_105 = "APP_IPAD_105"
23
+ APP_IPAD_PRO_3GEN_11 = "APP_IPAD_PRO_3GEN_11"
24
+ APP_IPAD_PRO_129 = "APP_IPAD_PRO_129"
25
+ APP_IPAD_PRO_3GEN_129 = "APP_IPAD_PRO_3GEN_129"
26
+
27
+ IMESSAGE_APP_IPHONE_40 = "IMESSAGE_APP_IPHONE_40"
28
+ IMESSAGE_APP_IPHONE_47 = "IMESSAGE_APP_IPHONE_47"
29
+ IMESSAGE_APP_IPHONE_55 = "IMESSAGE_APP_IPHONE_55"
30
+ IMESSAGE_APP_IPHONE_58 = "IMESSAGE_APP_IPHONE_58"
31
+ IMESSAGE_APP_IPHONE_65 = "IMESSAGE_APP_IPHONE_65"
32
+
33
+ IMESSAGE_APP_IPAD_97 = "IMESSAGE_APP_IPAD_97"
34
+ IMESSAGE_APP_IPAD_105 = "IMESSAGE_APP_IPAD_105"
35
+ IMESSAGE_APP_IPAD_PRO_129 = "IMESSAGE_APP_IPAD_PRO_129"
36
+ IMESSAGE_APP_IPAD_PRO_3GEN_11 = "IMESSAGE_APP_IPAD_PRO_3GEN_11"
37
+ IMESSAGE_APP_IPAD_PRO_3GEN_129 = "IMESSAGE_APP_IPAD_PRO_3GEN_129"
38
+
39
+ APP_WATCH_SERIES_3 = "APP_WATCH_SERIES_3"
40
+ APP_WATCH_SERIES_4 = "APP_WATCH_SERIES_4"
41
+
42
+ APP_APPLE_TV = "APP_APPLE_TV"
43
+
44
+ APP_DESKTOP = "APP_DESKTOP"
45
+
46
+ ALL_IMESSAGE = [
47
+ IMESSAGE_APP_IPHONE_40,
48
+ IMESSAGE_APP_IPHONE_47,
49
+ IMESSAGE_APP_IPHONE_55,
50
+ IMESSAGE_APP_IPHONE_58,
51
+ IMESSAGE_APP_IPHONE_65,
52
+
53
+ IMESSAGE_APP_IPAD_97,
54
+ IMESSAGE_APP_IPAD_105,
55
+ IMESSAGE_APP_IPAD_PRO_129,
56
+ IMESSAGE_APP_IPAD_PRO_3GEN_11,
57
+ IMESSAGE_APP_IPAD_PRO_3GEN_129
58
+ ]
59
+
60
+ ALL = [
61
+ APP_IPHONE_35,
62
+ APP_IPHONE_40,
63
+ APP_IPHONE_47,
64
+ APP_IPHONE_55,
65
+ APP_IPHONE_58,
66
+ APP_IPHONE_65,
67
+
68
+ APP_IPAD_97,
69
+ APP_IPAD_105,
70
+ APP_IPAD_PRO_3GEN_11,
71
+ APP_IPAD_PRO_129,
72
+ APP_IPAD_PRO_3GEN_129,
73
+
74
+ IMESSAGE_APP_IPHONE_40,
75
+ IMESSAGE_APP_IPHONE_47,
76
+ IMESSAGE_APP_IPHONE_55,
77
+ IMESSAGE_APP_IPHONE_58,
78
+ IMESSAGE_APP_IPHONE_65,
79
+
80
+ IMESSAGE_APP_IPAD_97,
81
+ IMESSAGE_APP_IPAD_105,
82
+ IMESSAGE_APP_IPAD_PRO_129,
83
+ IMESSAGE_APP_IPAD_PRO_3GEN_11,
84
+ IMESSAGE_APP_IPAD_PRO_3GEN_129,
85
+
86
+ APP_WATCH_SERIES_3,
87
+ APP_WATCH_SERIES_4,
88
+
89
+ APP_DESKTOP
90
+ ]
91
+ end
92
+
93
+ attr_mapping({
94
+ "screenshotDisplayType" => "screenshot_display_type",
95
+
96
+ "appScreenshots" => "app_screenshots"
97
+ })
98
+
99
+ def self.type
100
+ return "appScreenshotSets"
101
+ end
102
+
103
+ def apple_tv?
104
+ DisplayType::APP_APPLE_TV == screenshot_display_type
105
+ end
106
+
107
+ def imessage?
108
+ DisplayType::ALL_IMESSAGE.include?(screenshot_display_type)
109
+ end
110
+
111
+ #
112
+ # API
113
+ #
114
+
115
+ def self.all(filter: {}, includes: nil, limit: nil, sort: nil)
116
+ resp = Spaceship::ConnectAPI.get_app_screenshot_sets(filter: filter, includes: includes, limit: limit, sort: sort)
117
+ return resp.to_models
118
+ end
119
+
120
+ def upload_screenshot(path: nil, wait_for_processing: true)
121
+ return Spaceship::ConnectAPI::AppScreenshot.create(app_screenshot_set_id: id, path: path, wait_for_processing: wait_for_processing)
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,51 @@
1
+ require_relative '../model'
2
+ require_relative './app_review_attachment'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppStoreReviewDetail
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :contact_first_name
10
+ attr_accessor :contact_last_name
11
+ attr_accessor :contact_phone
12
+ attr_accessor :contact_email
13
+ attr_accessor :demo_account_name
14
+ attr_accessor :demo_account_password
15
+ attr_accessor :demo_account_required
16
+ attr_accessor :notes
17
+
18
+ attr_mapping({
19
+ "contactFirstName" => "contact_first_name",
20
+ "contactLastName" => "contact_last_name",
21
+ "contactPhone" => "contact_phone",
22
+ "contactEmail" => "contact_email",
23
+ "demoAccountName" => "demo_account_name",
24
+ "demoAccountPassword" => "demo_account_password",
25
+ "demoAccountRequired" => "demo_account_required",
26
+ "notes" => "notes"
27
+ })
28
+
29
+ def self.type
30
+ return "appStoreReviewDetails"
31
+ end
32
+
33
+ #
34
+ # API
35
+ #
36
+
37
+ def fetch_app_review_attachments
38
+ resp = Spaceship::ConnectAPI.get_app_review_attachments(app_store_review_detail_id: id)
39
+ return resp.to_models
40
+ end
41
+
42
+ def update(attributes: nil)
43
+ return Spaceship::ConnectAPI.patch_app_store_review_detail(app_store_review_detail_id: id, attributes: attributes)
44
+ end
45
+
46
+ def upload_attachment(path: nil)
47
+ return Spaceship::ConnectAPI::AppReviewAttachment.create(app_store_review_detail_id: id, path: path)
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,183 @@
1
+ require_relative '../model'
2
+ require_relative './app_store_version_localization'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppStoreVersion
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :platform
10
+ attr_accessor :version_string
11
+ attr_accessor :app_store_state
12
+ attr_accessor :store_icon
13
+ attr_accessor :watch_store_icon
14
+ attr_accessor :copyright
15
+ attr_accessor :release_type
16
+ attr_accessor :earliest_release_date # 2020-06-17T12:00:00-07:00
17
+ attr_accessor :uses_idfa
18
+ attr_accessor :is_watch_only
19
+ attr_accessor :downloadable
20
+ attr_accessor :created_date
21
+
22
+ module AppStoreState
23
+ READY_FOR_SALE = "READY_FOR_SALE"
24
+ WAITING_FOR_REVIEW = "WAITING_FOR_REVIEW"
25
+ DEVELOPER_REJECTED = "DEVELOPER_REJECTED"
26
+ REJECTED = "REJECTED"
27
+ PREPARE_FOR_SUBMISSION = "PREPARE_FOR_SUBMISSION"
28
+ METADATA_REJECTED = "METADATA_REJECTED"
29
+ INVALID_BINARY = "INVALID_BINARY"
30
+ end
31
+
32
+ module ReleaseType
33
+ AFTER_APPROVAL = "AFTER_APPROVAL"
34
+ MANUAL = "MANUAL"
35
+ SCHEDULED = "SCHEDULED"
36
+ end
37
+
38
+ attr_mapping({
39
+ "platform" => "platform",
40
+ "versionString" => "version_string",
41
+ "appStoreState" => "app_store_state",
42
+ "storeIcon" => "store_icon",
43
+ "watchStoreIcon" => "watch_store_icon",
44
+ "copyright" => "copyright",
45
+ "releaseType" => "release_type",
46
+ "earliestReleaseDate" => "earliest_release_date",
47
+ "usesIdfa" => "uses_idfa",
48
+ "isWatchOnly" => "is_watch_only",
49
+ "downloadable" => "downloadable",
50
+ "createdDate" => "created_date"
51
+ })
52
+
53
+ def self.type
54
+ return "appStoreVersions"
55
+ end
56
+
57
+ #
58
+ # API
59
+ #
60
+
61
+ # app,routingAppCoverage,resetRatingsRequest,appStoreVersionSubmission,appStoreVersionPhasedRelease,ageRatingDeclaration,appStoreReviewDetail,idfaDeclaration,gameCenterConfiguration
62
+ def self.get(app_store_version_id: nil, includes: nil, limit: nil, sort: nil)
63
+ return Spaceship::ConnectAPI.get_app_store_version(
64
+ app_store_version_id: app_store_version_id,
65
+ includes: includes
66
+ ).first
67
+ end
68
+
69
+ def update(attributes: nil)
70
+ return Spaceship::ConnectAPI.patch_app_store_version(app_store_version_id: id, attributes: attributes).first
71
+ end
72
+
73
+ #
74
+ # Age Rating Delcaration
75
+ #
76
+
77
+ def fetch_age_rating_declaration
78
+ resp = Spaceship::ConnectAPI.get_age_rating_declaration(app_store_version_id: id)
79
+ return resp.to_models.first
80
+ end
81
+
82
+ #
83
+ # App Store Version Localizations
84
+ #
85
+
86
+ def create_app_store_version_localization(attributes: nil)
87
+ resp = Spaceship::ConnectAPI.post_app_store_version_localization(app_store_version_id: id, attributes: attributes)
88
+ return resp.to_models.first
89
+ end
90
+
91
+ # appScreenshotSets,appPreviewSets
92
+ def get_app_store_version_localizations(filter: {}, includes: "appScreenshotSets", limit: nil, sort: nil)
93
+ filter ||= {}
94
+ filter["appStoreVersion"] = id
95
+ return Spaceship::ConnectAPI::AppStoreVersionLocalization.all(filter: filter, includes: includes, limit: limit, sort: sort)
96
+ end
97
+
98
+ #
99
+ # App Store Review Detail
100
+ #
101
+
102
+ def create_app_store_review_detail(attributes: nil)
103
+ resp = Spaceship::ConnectAPI.post_app_store_review_detail(app_store_version_id: id, attributes: attributes)
104
+ return resp.to_models.first
105
+ end
106
+
107
+ def fetch_app_store_review_detail
108
+ resp = Spaceship::ConnectAPI.get_app_store_review_detail(app_store_version_id: id)
109
+ return resp.to_models.first
110
+ end
111
+
112
+ #
113
+ # App Store Version Phased Releases
114
+ #
115
+
116
+ def fetch_app_store_version_phased_release
117
+ resp = Spaceship::ConnectAPI.get_app_store_version_phased_release(app_store_version_id: id)
118
+ return resp.to_models.first
119
+ end
120
+
121
+ def create_app_store_version_phased_release(attributes: nil)
122
+ resp = Spaceship::ConnectAPI.post_app_store_version_phased_release(app_store_version_id: id, attributes: attributes)
123
+ return resp.to_models.first
124
+ end
125
+
126
+ #
127
+ # App Store Version Submissions
128
+ #
129
+
130
+ def fetch_app_store_version_submission
131
+ resp = Spaceship::ConnectAPI.get_app_store_version_submission(app_store_version_id: id)
132
+ return resp.to_models.first
133
+ end
134
+
135
+ def create_app_store_version_submission
136
+ resp = Spaceship::ConnectAPI.post_app_store_version_submission(app_store_version_id: id)
137
+ return resp.to_models.first
138
+ end
139
+
140
+ #
141
+ # Build
142
+ #
143
+
144
+ def get_build(build_id: nil)
145
+ resp = Spaceship::ConnectAPI.get_build(app_store_version_id: id, build_id: build_id)
146
+ return resp.to_models.first
147
+ end
148
+
149
+ def select_build(build_id: nil)
150
+ resp = Spaceship::ConnectAPI.patch_app_store_version_with_build(app_store_version_id: id, build_id: build_id)
151
+ return resp.to_models.first
152
+ end
153
+
154
+ #
155
+ # IDFA Declarations
156
+ #
157
+
158
+ def fetch_idfa_declaration
159
+ resp = Spaceship::ConnectAPI.get_idfa_declaration(app_store_version_id: id)
160
+ return resp.to_models.first
161
+ end
162
+
163
+ def create_idfa_declaration(attributes: nil)
164
+ resp = Spaceship::ConnectAPI.post_idfa_declaration(app_store_version_id: id, attributes: attributes)
165
+ return resp.to_models.first
166
+ end
167
+
168
+ #
169
+ # Reset Ratings Requests
170
+ #
171
+
172
+ def fetch_reset_ratings_request
173
+ resp = Spaceship::ConnectAPI.get_reset_ratings_request(app_store_version_id: id)
174
+ return resp.to_models.first
175
+ end
176
+
177
+ def create_reset_ratings_request
178
+ resp = Spaceship::ConnectAPI.post_reset_ratings_request(app_store_version_id: id)
179
+ return resp.to_models.first
180
+ end
181
+ end
182
+ end
183
+ end
@@ -0,0 +1,86 @@
1
+ require_relative '../model'
2
+ require_relative './app_preview_set'
3
+ require_relative './app_screenshot_set'
4
+
5
+ module Spaceship
6
+ class ConnectAPI
7
+ class AppStoreVersionLocalization
8
+ include Spaceship::ConnectAPI::Model
9
+
10
+ attr_accessor :description
11
+ attr_accessor :locale
12
+ attr_accessor :keywords
13
+ attr_accessor :marketing_url
14
+ attr_accessor :promotional_text
15
+ attr_accessor :support_url
16
+ attr_accessor :whats_new
17
+
18
+ attr_accessor :app_screenshot_sets
19
+ attr_accessor :app_preview_sets
20
+
21
+ attr_mapping({
22
+ "description" => "description",
23
+ "locale" => "locale",
24
+ "keywords" => "keywords",
25
+ "marketingUrl" => "marketing_url",
26
+ "promotionalText" => "promotional_text",
27
+ "supportUrl" => "support_url",
28
+ "whatsNew" => "whats_new",
29
+
30
+ "appScreenshotSets" => "app_screenshot_sets",
31
+ "appPreviewSets" => "app_preview_sets"
32
+ })
33
+
34
+ def self.type
35
+ return "appStoreVersionLocalizations"
36
+ end
37
+
38
+ #
39
+ # API
40
+ #
41
+
42
+ def self.all(filter: {}, includes: nil, limit: nil, sort: nil)
43
+ resp = Spaceship::ConnectAPI.get_app_store_version_localizations(filter: filter, includes: includes, limit: limit, sort: sort)
44
+ return resp.to_models
45
+ end
46
+
47
+ def update(attributes: nil)
48
+ Spaceship::ConnectAPI.patch_app_store_version_localization(app_store_version_localization_id: id, attributes: attributes)
49
+ end
50
+
51
+ def delete!(filter: {}, includes: nil, limit: nil, sort: nil)
52
+ Spaceship::ConnectAPI.delete_app_store_version_localization(app_store_version_localization_id: id)
53
+ end
54
+
55
+ #
56
+ # App Preview Sets
57
+ #
58
+
59
+ def get_app_preview_sets(filter: {}, includes: "appPreviews", limit: nil, sort: nil)
60
+ filter ||= {}
61
+ filter["appStoreVersionLocalization"] = id
62
+ return Spaceship::ConnectAPI::AppPreviewSet.all(filter: filter, includes: includes, limit: limit, sort: sort)
63
+ end
64
+
65
+ def create_app_preview_set(attributes: nil)
66
+ resp = Spaceship::ConnectAPI.post_app_preview_set(app_store_version_localization_id: id, attributes: attributes)
67
+ return resp.to_models.first
68
+ end
69
+
70
+ #
71
+ # App Screenshot Sets
72
+ #
73
+
74
+ def get_app_screenshot_sets(filter: {}, includes: "appScreenshots", limit: nil, sort: nil)
75
+ filter ||= {}
76
+ filter["appStoreVersionLocalization"] = id
77
+ return Spaceship::ConnectAPI::AppScreenshotSet.all(filter: filter, includes: includes, limit: limit, sort: sort)
78
+ end
79
+
80
+ def create_app_screenshot_set(attributes: nil)
81
+ resp = Spaceship::ConnectAPI.post_app_screenshot_set(app_store_version_localization_id: id, attributes: attributes)
82
+ return resp.to_models.first
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,36 @@
1
+ require_relative '../model'
2
+ module Spaceship
3
+ class ConnectAPI
4
+ class AppStoreVersionPhasedRelease
5
+ include Spaceship::ConnectAPI::Model
6
+
7
+ attr_accessor :phased_release_state
8
+ attr_accessor :start_date
9
+ attr_accessor :total_pause_duration
10
+ attr_accessor :current_day_number
11
+
12
+ module PhasedReleaseState
13
+ INACTIVE = "INACTIVE"
14
+ end
15
+
16
+ attr_mapping({
17
+ "phasedReleaseState" => "phased_release_state",
18
+ "startDate" => "start_date",
19
+ "totalPauseDuration" => "total_pause_duration",
20
+ "currentDayNumber" => "current_day_number"
21
+ })
22
+
23
+ def self.type
24
+ return "appStoreVersionPhasedReleases"
25
+ end
26
+
27
+ #
28
+ # API
29
+ #
30
+
31
+ def delete!(filter: {}, includes: nil, limit: nil, sort: nil)
32
+ Spaceship::ConnectAPI.delete_app_store_version_phased_release(app_store_version_phased_release_id: id)
33
+ end
34
+ end
35
+ end
36
+ end