diff --git a/Library/Homebrew/bintray.rb b/Library/Homebrew/bintray.rb index cb2966ca0d..0dc273283b 100644 --- a/Library/Homebrew/bintray.rb +++ b/Library/Homebrew/bintray.rb @@ -10,30 +10,27 @@ class Bintray end def inspect - "#" + "#" end - def initialize(user: ENV["HOMEBREW_BINTRAY_USER"], key: ENV["HOMEBREW_BINTRAY_KEY"], org: "homebrew", clear: true) - @bintray_user = user - @bintray_key = key + def initialize(org: "homebrew") @bintray_org = org - if !@bintray_user || !@bintray_key - unless Homebrew.args.dry_run? - raise UsageError, "Missing HOMEBREW_BINTRAY_USER or HOMEBREW_BINTRAY_KEY variables!" - end - end - raise UsageError, "Must set a Bintray organisation!" unless @bintray_org ENV["HOMEBREW_FORCE_HOMEBREW_ON_LINUX"] = "1" if @bintray_org == "homebrew" && !OS.mac? - - ENV.delete "HOMEBREW_BINTRAY_KEY" if clear end def open_api(url, *extra_curl_args, auth: true) args = extra_curl_args - args += ["--user", "#{@bintray_user}:#{@bintray_key}"] if auth + + if auth + raise UsageError, "HOMEBREW_BINTRAY_USER is unset." unless (user = EnvConfig.bintray_user) + raise UsageError, "HOMEBREW_BINTRAY_KEY is unset." unless (key = EnvConfig.bintray_key) + + args += ["--user", "#{user}:#{key}"] + end + curl(*args, url, show_output: Homebrew.args.verbose?, secrets: @bintray_key) diff --git a/Library/Homebrew/dev-cmd/pr-upload.rb b/Library/Homebrew/dev-cmd/pr-upload.rb index 9453428e91..fb53580aed 100644 --- a/Library/Homebrew/dev-cmd/pr-upload.rb +++ b/Library/Homebrew/dev-cmd/pr-upload.rb @@ -48,13 +48,9 @@ module Homebrew if args.dry_run? puts "brew #{bottle_args.join " "}" - else - safe_system HOMEBREW_BREW_FILE, *bottle_args - end - - if args.dry_run? puts "Upload bottles described by these JSON files to Bintray:\n #{Dir["*.json"].join("\n ")}" else + safe_system HOMEBREW_BREW_FILE, *bottle_args bintray.upload_bottle_json(Dir["*.json"], publish_package: !args.no_publish?, warn_on_error: args.warn_on_upload_failure?) diff --git a/Library/Homebrew/test/bintray_spec.rb b/Library/Homebrew/test/bintray_spec.rb index 6e3a017dee..2a61f8d476 100644 --- a/Library/Homebrew/test/bintray_spec.rb +++ b/Library/Homebrew/test/bintray_spec.rb @@ -3,7 +3,13 @@ require "bintray" describe Bintray, :needs_network do - bintray = described_class.new(user: "BrewTestBot", key: "deadbeef", org: "homebrew") + subject(:bintray) { described_class.new(org: "homebrew") } + + before do + ENV["HOMEBREW_BINTRAY_USER"] = "BrewTestBot" + ENV["HOMEBREW_BINTRAY_KEY"] = "deadbeef" + end + describe "::file_published?" do it "detects a published file" do results = bintray.file_published?(repo: "bottles", remote_file: "hello-2.10.catalina.bottle.tar.gz")