pull: better handle missing bottles.

If we make a PR in which we're building many formulae (e.g.
https://github.com/Homebrew/homebrew-core/pull/9249) then we may want
to pull those that built and publish their bottles and discard those
that did not. Instead of saying bottles will be published when they
won't and then blowing up just avoid publishing them and print a warning
instead.
This commit is contained in:
Mike McQuaid 2017-01-27 09:36:47 +00:00
parent e444488bfe
commit eff70115b5

View File

@ -248,7 +248,6 @@ module Homebrew
changed_formulae_names.each do |name| changed_formulae_names.each do |name|
f = Formula[name] f = Formula[name]
next if f.bottle_unneeded? || f.bottle_disabled? next if f.bottle_unneeded? || f.bottle_disabled?
ohai "Publishing on Bintray: #{f.name} #{f.pkg_version}"
publish_bottle_file_on_bintray(f, bintray_creds) publish_bottle_file_on_bintray(f, bintray_creds)
published << f.full_name published << f.full_name
end end
@ -408,7 +407,12 @@ module Homebrew
if info.nil? if info.nil?
raise "Failed publishing bottle: failed reading formula info for #{f.full_name}" raise "Failed publishing bottle: failed reading formula info for #{f.full_name}"
end end
unless info.bottle_info_any
opoo "No bottle defined in formula #{package}"
return
end
version = info.pkg_version version = info.pkg_version
ohai "Publishing on Bintray: #{package} #{version}"
curl "-w", '\n', "--silent", "--fail", curl "-w", '\n', "--silent", "--fail",
"-u#{creds[:user]}:#{creds[:key]}", "-X", "POST", "-u#{creds[:user]}:#{creds[:key]}", "-X", "POST",
"-H", "Content-Type: application/json", "-H", "Content-Type: application/json",