Sha256: 0ce9f8b3a33303e1927bccdcdb8987752f93000d87ac79730c40cffe6654660c

Contents?: true

Size: 945 Bytes

Versions: 16

Compression:

Stored size: 945 Bytes

Contents

module Vagrant
  class Commands
    # Suspend a running vagrant instance. This suspends the instance, saving
    # the state of the VM and "pausing" it. The instance can be resumed
    # again with {resume}.
    #
    # This command requires that an instance already be brought up with
    # `vagrant up`.
    class Suspend < Base
      Base.subcommand "suspend", self
      description "Suspends the currently running vagrant environment"

      def execute(args=[])
        all_or_single(args, :suspend)
      end

      def suspend_single(name)
        vm = env.vms[name.to_sym]
        if vm.nil?
          error_and_exit(:unknown_vm, :vm => name)
          return # for tests
        end

        if vm.created?
          vm.suspend
        else
          vm.env.logger.info "VM '#{name}' not created. Ignoring."
        end
      end

      def options_spec(opts)
        opts.banner = "Usage: vagrant suspend"
      end
    end
  end
end

Version data entries

16 entries across 16 versions & 2 rubygems

Version Path
vagrantup-0.5.4 lib/vagrant/commands/suspend.rb
vagrantup-0.5.3 lib/vagrant/commands/suspend.rb
vagrantup-0.5.2 lib/vagrant/commands/suspend.rb
vagrantup-0.5.1 lib/vagrant/commands/suspend.rb
vagrantup-0.5.0 lib/vagrant/commands/suspend.rb
vagrantup-0.4.3.dev lib/vagrant/commands/suspend.rb
vagrantup-0.4.1 lib/vagrant/commands/suspend.rb
vagrantup-0.4.0 lib/vagrant/commands/suspend.rb
vagrant-0.5.4 lib/vagrant/commands/suspend.rb
vagrant-0.5.3 lib/vagrant/commands/suspend.rb
vagrant-0.5.2 lib/vagrant/commands/suspend.rb
vagrant-0.5.1 lib/vagrant/commands/suspend.rb
vagrant-0.5.0 lib/vagrant/commands/suspend.rb
vagrant-0.4.2 lib/vagrant/commands/suspend.rb
vagrant-0.4.1 lib/vagrant/commands/suspend.rb
vagrant-0.4.0 lib/vagrant/commands/suspend.rb