class Spaceship::ConnectAPI::Build
Constants
- ESSENTIAL_INCLUDES
Attributes
app[RW]
beta_app_review_submission[RW]
beta_build_metrics[RW]
build_beta_detail[RW]
expiration_date[RW]
expired[RW]
icon_asset_token[RW]
min_os_version[RW]
pre_release_version[RW]
processing_state[RW]
uploaded_date[RW]
uses_non_exempt_encryption[RW]
version[RW]
Public Class Methods
all(app_id: nil, version: nil, build_number: nil, platform: nil, processing_states: "PROCESSING,FAILED,INVALID,VALID", includes: ESSENTIAL_INCLUDES, sort: "-uploadedDate", limit: 30)
click to toggle source
API
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 105 def self.all(app_id: nil, version: nil, build_number: nil, platform: nil, processing_states: "PROCESSING,FAILED,INVALID,VALID", includes: ESSENTIAL_INCLUDES, sort: "-uploadedDate", limit: 30) resps = Spaceship::ConnectAPI.get_builds( filter: { app: app_id, "preReleaseVersion.version" => version, version: build_number, processingState: processing_states }, includes: includes, sort: sort, limit: limit ).all_pages models = resps.map(&:to_models).flatten # Filtering after models are fetched since there is no way to do this in a query param filter if platform models = models.select do |build| build.pre_release_version && build.pre_release_version.platform == platform end end return models end
get(build_id: nil, includes: ESSENTIAL_INCLUDES)
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 124 def self.get(build_id: nil, includes: ESSENTIAL_INCLUDES) return Spaceship::ConnectAPI.get_build(build_id: build_id, includes: includes).first end
type()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 49 def self.type return "builds" end
Public Instance Methods
add_beta_groups(beta_groups: nil)
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 128 def add_beta_groups(beta_groups: nil) beta_groups ||= [] beta_group_ids = beta_groups.map(&:id) return Spaceship::ConnectAPI.add_beta_groups_to_build(build_id: id, beta_group_ids: beta_group_ids) end
app_id()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 62 def app_id raise "No app included" unless app return app.id end
app_version()
click to toggle source
Helpers
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 57 def app_version raise "No pre_release_version included" unless pre_release_version return pre_release_version.version end
bundle_id()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 67 def bundle_id raise "No app included" unless app return app.bundle_id end
get_beta_build_localizations(filter: {}, includes: nil, limit: nil, sort: nil)
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 134 def get_beta_build_localizations(filter: {}, includes: nil, limit: nil, sort: nil) resps = Spaceship::ConnectAPI.get_beta_build_localizations( filter: { build: id }, includes: includes, sort: sort, limit: limit ).all_pages return resps.map(&:to_models).flatten end
get_build_beta_details(filter: {}, includes: nil, limit: nil, sort: nil)
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 144 def get_build_beta_details(filter: {}, includes: nil, limit: nil, sort: nil) resps = Spaceship::ConnectAPI.get_build_beta_details( filter: { build: id }, includes: includes, sort: sort, limit: limit ).all_pages return resps.map(&:to_models).flatten end
platform()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 72 def platform raise "No pre_release_version included" unless pre_release_version return pre_release_version.platform end
post_beta_app_review_submission()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 154 def post_beta_app_review_submission return Spaceship::ConnectAPI.post_beta_app_review_submissions(build_id: id) end
processed?()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 77 def processed? return processing_state != ProcessingState::PROCESSING end
ready_for_beta_submission?()
click to toggle source
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 81 def ready_for_beta_submission? raise "No build_beat_detail included" unless build_beta_detail return build_beta_detail.ready_for_beta_submission? end
to_testflight_build()
click to toggle source
This is here temporarily until the removal of Spaceship::TestFlight
# File spaceship/lib/spaceship/connect_api/models/build.rb, line 87 def to_testflight_build h = { 'id' => id, 'buildVersion' => version, 'uploadDate' => uploaded_date, 'externalState' => processed? ? Spaceship::TestFlight::Build::BUILD_STATES[:active] : Spaceship::TestFlight::Build::BUILD_STATES[:processing], 'appAdamId' => app_id, 'bundleId' => bundle_id, 'trainVersion' => app_version } return Spaceship::TestFlight::Build.new(h) end