diff options
author | Josh Kalderimis <josh.kalderimis@gmail.com> | 2011-08-31 02:08:08 +0200 |
---|---|---|
committer | Josh Kalderimis <josh.kalderimis@gmail.com> | 2011-08-31 02:08:08 +0200 |
commit | bcea40fb1fb457e343ccce5fe97df1c1911487a9 (patch) | |
tree | 5012c4bc6731927100ab6ec1156eac449797c7ac /Rakefile | |
parent | f8fdf6d309ae5467d1fbde74ad4f4c3559352243 (diff) | |
download | bundler-bcea40fb1fb457e343ccce5fe97df1c1911487a9.tar.gz |
We need to capturing rake errors and return false, and then fail the task manually
Diffstat (limited to 'Rakefile')
-rw-r--r-- | Rakefile | 20 |
1 files changed, 14 insertions, 6 deletions
@@ -2,6 +2,13 @@ $:.unshift File.expand_path("../lib", __FILE__) require 'bundler/gem_tasks' +def safe_task(&block) + yield + true +rescue + false +end + namespace :spec do desc "Ensure spec dependencies are installed" task :deps do @@ -118,16 +125,17 @@ begin task "travis" do rg = ENV['RGV'] || 'master' - puts "\n\e[1;33m[Travis CI] Running bundler sudo specs against rubygems #{rg}\e[m\n\n" - sudos = Rake::Task["spec:rubygems:#{rg}:sudo"].invoke + puts "\n\e[1;33m[Travis CI] Running bundler specs against rubygems #{rg}\e[m\n\n" + specs = safe_task { Rake::Task["spec:rubygems:#{rg}"].invoke } Rake::Task["spec:rubygems:#{rg}"].reenable - Rake::Task["spec"].reenable - puts "\n\e[1;33m[Travis CI] Running bundler specs against rubygems #{rg}\e[m\n\n" - specs = Rake::Task["spec:rubygems:#{rg}"].invoke + puts "\n\e[1;33m[Travis CI] Running bundler sudo specs against rubygems #{rg}\e[m\n\n" + sudos = safe_task { Rake::Task["spec:rubygems:#{rg}:sudo"].invoke } - specs && sudos + unless specs && sudos + fail "Bundler tests failed, please review the log for more information" + end end end |