spaceship/lib/spaceship/test_flight/build_trains.rb in fastlane-2.126.0.beta.20190623200100 vs spaceship/lib/spaceship/test_flight/build_trains.rb in fastlane-2.126.0
- old
+ new
@@ -11,68 +11,17 @@
# It is the responsibility of Build to lazy-load the necessary properties.
#
# See `Spaceship::TestFlight::Build#reload`
def self.all(app_id: nil, platform: nil, retry_count: 3)
- client = Spaceship::ConnectAPI::TestFlight.client
+ resps = Spaceship::ConnectAPI.get_builds(filter: { app: app_id, processingState: "VALID,PROCESSING,FAILED,INVALID" }, limit: 100, sort: "uploadedDate", includes: "preReleaseVersion,app").all_pages
+ connect_builds = resps.map(&:to_models).flatten
- builds = []
- included = []
- cursor = nil
-
- loop do
- builds_resp = client.get_builds(filter: { app: app_id, processingState: "VALID,PROCESSING,FAILED,INVALID" }, limit: 100, sort: "uploadedDate", includes: "preReleaseVersion,app", cursor: cursor)
- builds += builds_resp["data"]
- included += (builds_resp["included"] || [])
-
- next_page = builds_resp["links"]["next"]
- break if next_page.nil?
-
- uri = URI.parse(next_page)
- params = CGI.parse(uri.query)
- cursor = params["cursor"].first
-
- break if cursor.nil?
- end
-
- # Load with all of the data
- builds.map do |build|
- r = build["relationships"]["app"]["data"]
- build["app"] = included.find { |h| h["type"] == r["type"] && h["id"] == r["id"] }
-
- r = build["relationships"]["preReleaseVersion"]["data"]
- build["preReleaseVersion"] = included.find { |h| h["type"] == r["type"] && h["id"] == r["id"] }
-
- build
- end
-
- # Map to testflight build response????
- train_builds = builds.map do |build|
- h = {}
-
- h['buildVersion'] = build["attributes"]["version"]
- h['uploadDate'] = build["attributes"]["uploadedDate"]
-
- processing_state = build["attributes"]["processingState"]
- if processing_state == "VALID"
- h['externalState'] = Spaceship::TestFlight::Build::BUILD_STATES[:active]
- elsif processing_state == "PROCESSING"
- h['externalState'] = Spaceship::TestFlight::Build::BUILD_STATES[:processing]
- end
-
- h['appAdamId'] = build["app"]["id"]
- h['bundleId'] = build["app"]["attributes"]["bundleId"]
-
- h['trainVersion'] = build["preReleaseVersion"]["attributes"]["version"]
-
- h
- end
-
trains = {}
- train_builds.each do |build|
- train_version = build["trainVersion"]
+ connect_builds.each do |connect_build|
+ train_version = connect_build.app_version
trains[train_version] ||= []
- trains[train_version] << Spaceship::TestFlight::Build.new(build)
+ trains[train_version] << connect_build.to_testflight_build
end
self.new(trains)
end