diff options
| author | Xu Cheng | 2015-05-18 18:44:27 +0800 |
|---|---|---|
| committer | Xu Cheng | 2015-05-18 19:48:06 +0800 |
| commit | 471c5502f5b287fc274f9d214c2530d317e22441 (patch) | |
| tree | 7b414e716ccb63dd820573e410218822560502ce /Library | |
| parent | ae41a5197665995975e3cf0b219faa5635929f0a (diff) | |
| download | brew-471c5502f5b287fc274f9d214c2530d317e22441.tar.bz2 | |
test-bot: don't complain bottle errors when installing gcc and hg
Closes Homebrew/homebrew#39626.
Signed-off-by: Xu Cheng <xucheng@me.com>
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/cmd/test-bot.rb | 20 | ||||
| -rw-r--r-- | Library/Homebrew/utils.rb | 9 |
2 files changed, 23 insertions, 6 deletions
diff --git a/Library/Homebrew/cmd/test-bot.rb b/Library/Homebrew/cmd/test-bot.rb index 3106c2969..7a6c64a94 100644 --- a/Library/Homebrew/cmd/test-bot.rb +++ b/Library/Homebrew/cmd/test-bot.rb @@ -386,7 +386,7 @@ module Homebrew formula.conflicts.map { |c| Formulary.factory(c.name) }. select { |f| f.installed? }.each do |conflict| test "brew", "unlink", conflict.name - end + end installed_gcc = false @@ -418,7 +418,11 @@ module Homebrew CompilerSelector.select_for(formula) rescue CompilerSelectionError => e unless installed_gcc - test "brew", "install", "gcc" + if @formulae.include? "gcc" + run_as_not_developer { test "brew", "install", "gcc" } + else + test "brew", "install", "gcc" + end installed_gcc = true OS::Mac.clear_version_cache retry @@ -448,7 +452,11 @@ module Homebrew testable_dependents = dependents.select { |d| d.test_defined? && d.bottled? } if (deps | reqs).any? { |d| d.name == "mercurial" && d.build? } - test "brew", "install", "mercurial" + if @formulae.include? "mercurial" + run_as_not_developer { test "brew", "install", "mercurial" } + else + test "brew", "install", "mercurial" + end end test "brew", "fetch", "--retry", *unchanged_dependencies unless unchanged_dependencies.empty? @@ -475,9 +483,9 @@ module Homebrew install_args << canonical_formula_name # Don't care about e.g. bottle failures for dependencies. - ENV["HOMEBREW_DEVELOPER"] = nil - test "brew", "install", "--only-dependencies", *install_args unless dependencies.empty? - ENV["HOMEBREW_DEVELOPER"] = "1" + run_as_not_developer do + test "brew", "install", "--only-dependencies", *install_args unless dependencies.empty? + end test "brew", "install", *install_args install_passed = steps.last.passed? audit_args = [canonical_formula_name] diff --git a/Library/Homebrew/utils.rb b/Library/Homebrew/utils.rb index bb90f6cbf..ea8d30a94 100644 --- a/Library/Homebrew/utils.rb +++ b/Library/Homebrew/utils.rb @@ -150,6 +150,15 @@ ensure ENV['PATH'] = old_path end +def run_as_not_developer(&block) + begin + old = ENV.delete "HOMEBREW_DEVELOPER" + yield + ensure + ENV["HOMEBREW_DEVELOPER"] = old + end +end + # Kernel.system but with exceptions def safe_system cmd, *args Homebrew.system(cmd, *args) or raise ErrorDuringExecution.new(cmd, args) |
