diff --git a/lib/vagrant/action/builtin/provision.rb b/lib/vagrant/action/builtin/provision.rb index 4f593f748..cb3caaae0 100644 --- a/lib/vagrant/action/builtin/provision.rb +++ b/lib/vagrant/action/builtin/provision.rb @@ -16,6 +16,10 @@ module Vagrant end def call(env) + # Check if we're even provisioning things. + enabled = true + enabled = env[:provision_enabled] if env.has_key?(:provision_enabled) + # Get all the configured provisioners provisioners = env[:machine].config.vm.provisioners.map do |provisioner| klass = Vagrant.plugin("2").manager.provisioners[provisioner.name] @@ -30,12 +34,14 @@ module Vagrant # Continue, we need the VM to be booted. @app.call(env) - # Actually provision - provisioners.each do |p| - env[:ui].info(I18n.t("vagrant.actions.vm.provision.beginning", - :provisioner => p.class)) + # Actually provision if we enabled it + if enabled + provisioners.each do |p| + env[:ui].info(I18n.t("vagrant.actions.vm.provision.beginning", + :provisioner => p.class)) - p.provision + p.provision + end end end end diff --git a/plugins/commands/up/start_mixins.rb b/plugins/commands/up/start_mixins.rb index 107b35497..d4a2ed0ee 100644 --- a/plugins/commands/up/start_mixins.rb +++ b/plugins/commands/up/start_mixins.rb @@ -8,12 +8,12 @@ module VagrantPlugins # @param [Hash] options def build_start_options(parser, options) # Setup the defaults - options["provision.enabled"] = true + options[:provision_enabled] = true options["provision.types"] = nil # Add the options parser.on("--[no-]provision", "Enable or disable provisioning") do |p| - options["provision.enabled"] = p + options[:provision_enabled] = p end parser.on("--provision-with x,y,z", Array,