Method: Supply::Uploader#fetch_track_and_release!

Defined in:
supply/lib/supply/uploader.rb

#fetch_track_and_release!(track, version_code, statuses = nil) ⇒ Object



109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# File 'supply/lib/supply/uploader.rb', line 109

def fetch_track_and_release!(track, version_code, statuses = nil)
  tracks = client.tracks(track)
  return nil, nil if tracks.empty?

  track = tracks.first
  releases = track.releases

  releases = releases.select { |r| statuses.include?(r.status) } unless statuses.nil? || statuses.empty?
  releases = releases.select { |r| (r.version_codes || []).map(&:to_s).include?(version_code.to_s) } if version_code

  if releases.size > 1
    UI.user_error!("More than one release found in this track. Please specify with the :version_code option to select a release.")
  end

  return track, releases.first
end