diff --git a/plugins/commands/resume/command.rb b/plugins/commands/resume/command.rb index 18e1aa208..431c18bba 100644 --- a/plugins/commands/resume/command.rb +++ b/plugins/commands/resume/command.rb @@ -1,24 +1,38 @@ require 'optparse' +require Vagrant.source_root.join("plugins/commands/up/start_mixins") + module VagrantPlugins module CommandResume class Command < Vagrant.plugin("2", :command) + # We assume that the `up` plugin exists and that we'll have access + # to this. + include VagrantPlugins::CommandUp::StartMixins + def self.synopsis "resume a suspended vagrant machine" end def execute + options = {} + options[:provision_ignore_sentinel] = false + opts = OptionParser.new do |o| o.banner = "Usage: vagrant resume [vm-name]" + o.separator "" + build_start_options(o, options) end # Parse the options argv = parse_options(opts) return if !argv + # Validate the provisioners + validate_provisioner_flags!(options, argv) + @logger.debug("'resume' each target VM...") with_target_vms(argv) do |machine| - machine.action(:resume) + machine.action(:resume, options) end # Success, exit status 0 diff --git a/website/source/docs/cli/resume.html.md b/website/source/docs/cli/resume.html.md index a96ddff51..290457006 100644 --- a/website/source/docs/cli/resume.html.md +++ b/website/source/docs/cli/resume.html.md @@ -14,3 +14,15 @@ description: |- This resumes a Vagrant managed machine that was previously suspended, perhaps with the [suspend command](/docs/cli/suspend.html). + +The configured provisioners will not run again, by default. You can force +the provisioners to re-run by specifying the `--provision` flag. + +# Options + +* `--provision` - Force the provisioners to run. + +* `--provision-with x,y,z` - This will only run the given provisioners. For + example, if you have a `:shell` and `:chef_solo` provisioner and run + `vagrant provision --provision-with shell`, only the shell provisioner will + be run.