diff options
-rw-r--r-- | lib/bundler/cli.rb | 8 | ||||
-rw-r--r-- | lib/bundler/cli/cache.rb | 2 | ||||
-rw-r--r-- | lib/bundler/cli/install.rb | 2 | ||||
-rw-r--r-- | lib/bundler/source/rubygems.rb | 2 | ||||
-rw-r--r-- | spec/bundler/support/matchers.rb | 2 |
5 files changed, 12 insertions, 4 deletions
diff --git a/lib/bundler/cli.rb b/lib/bundler/cli.rb index 3d93ce5e6f..e1c284130b 100644 --- a/lib/bundler/cli.rb +++ b/lib/bundler/cli.rb @@ -251,7 +251,9 @@ module Bundler remembered_negative_flag_deprecation("no-deployment") require_relative "cli/install" - Install.new(options.dup).run + Bundler.settings.temporary(:no_install => false) do + Install.new(options.dup).run + end end map aliases_for("install") @@ -297,7 +299,9 @@ module Bundler def update(*gems) SharedHelpers.major_deprecation(2, "The `--force` option has been renamed to `--redownload`") if ARGV.include?("--force") require_relative "cli/update" - Update.new(options, gems).run + Bundler.settings.temporary(:no_install => false) do + Update.new(options, gems).run + end end desc "show GEM [OPTIONS]", "Shows all gems that are part of the bundle, or the path to a given gem" diff --git a/lib/bundler/cli/cache.rb b/lib/bundler/cli/cache.rb index eb5dd23092..c8698ed7e3 100644 --- a/lib/bundler/cli/cache.rb +++ b/lib/bundler/cli/cache.rb @@ -14,7 +14,7 @@ module Bundler Bundler.settings.set_command_option_if_given :cache_path, options["cache-path"] setup_cache_all - install unless Bundler.settings[:no_install] + install # TODO: move cache contents here now that all bundles are locked custom_path = Bundler.settings[:path] if options[:path] diff --git a/lib/bundler/cli/install.rb b/lib/bundler/cli/install.rb index acf92f28ad..e9b85f7f6f 100644 --- a/lib/bundler/cli/install.rb +++ b/lib/bundler/cli/install.rb @@ -161,6 +161,8 @@ module Bundler Bundler.settings.set_command_option_if_given :no_prune, options["no-prune"] + Bundler.settings.set_command_option_if_given :no_install, options["no-install"] + Bundler.settings.set_command_option_if_given :clean, options["clean"] normalize_groups if options[:without] || options[:with] diff --git a/lib/bundler/source/rubygems.rb b/lib/bundler/source/rubygems.rb index f78e6a443b..04ba4a654c 100644 --- a/lib/bundler/source/rubygems.rb +++ b/lib/bundler/source/rubygems.rb @@ -160,6 +160,8 @@ module Bundler raise GemNotFound, "Could not find #{spec.file_name} for installation" unless path end + return if Bundler.settings[:no_install] + if requires_sudo? install_path = Bundler.tmp(spec.full_name) bin_path = install_path.join("bin") diff --git a/spec/bundler/support/matchers.rb b/spec/bundler/support/matchers.rb index 3c2a7f9f58..ce6b216619 100644 --- a/spec/bundler/support/matchers.rb +++ b/spec/bundler/support/matchers.rb @@ -178,7 +178,7 @@ module Spec begin require '#{name}' - name_constant = '#{Spec::Builders.constantize(name)}' + name_constant = #{Spec::Builders.constantize(name)} if #{version.nil?} || name_constant == '#{version}' exit 64 else |