summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordanielsdeleo <dan@getchef.com>2015-05-29 08:43:26 -0700
committerdanielsdeleo <dan@getchef.com>2015-05-29 10:00:43 -0700
commit8e3e5248ba0d2fbae7aba15129b635ee6c2587c6 (patch)
treeecbfa51ff3107d615180a697197507813e8ebc6d
parentc58162b9ce165bde444ff396a95668666884c052 (diff)
downloadchef-8e3e5248ba0d2fbae7aba15129b635ee6c2587c6.tar.gz
Run `gem install` tasks w/o bundler's env
When bundler 1.10 is installed, running these tasks w/ bundler causes `gem install` to fail with no output
-rw-r--r--Rakefile12
-rw-r--r--chef-config/Rakefile12
2 files changed, 22 insertions, 2 deletions
diff --git a/Rakefile b/Rakefile
index d01a139c30..6a6e163a53 100644
--- a/Rakefile
+++ b/Rakefile
@@ -108,9 +108,19 @@ Dir[File.expand_path("../*gemspec", __FILE__)].reverse.each do |gemspec_path|
Gem::PackageTask.new(gemspec).define
end
+def with_clean_env(&block)
+ if defined?(Bundler)
+ Bundler.with_clean_env(&block)
+ else
+ block.call
+ end
+end
+
desc "Build and install a chef gem"
task :install => [:package] do
- sh %{gem install pkg/#{GEM_NAME}-#{VERSION}.gem --no-rdoc --no-ri}
+ with_clean_env do
+ sh %{gem install pkg/#{GEM_NAME}-#{VERSION}.gem --no-rdoc --no-ri}
+ end
end
task :uninstall do
diff --git a/chef-config/Rakefile b/chef-config/Rakefile
index 6eb195f672..10b6010de3 100644
--- a/chef-config/Rakefile
+++ b/chef-config/Rakefile
@@ -8,9 +8,19 @@ Dir[File.expand_path("../*gemspec", __FILE__)].reverse.each do |gemspec_path|
Gem::PackageTask.new(gemspec).define
end
+def with_clean_env(&block)
+ if defined?(Bundler)
+ Bundler.with_clean_env(&block)
+ else
+ block.call
+ end
+end
+
desc "Build and install a chef-config gem"
task :install => [:package] do
- sh %{gem install pkg/chef-config-#{ChefConfig::VERSION}.gem --no-rdoc --no-ri}
+ with_clean_env do
+ sh(%{gem install pkg/chef-config-#{ChefConfig::VERSION}.gem --no-rdoc --no-ri}, verbose: true)
+ end
end
task :default => :spec