Sha256: 0311deec54fb9da5308a2103f3db7079604fe729879e535f41bd2fa884bd506e

Contents?: true

Size: 1.35 KB

Versions: 19

Compression:

Stored size: 1.35 KB

Contents

require 'optparse'

module Vagrant
  module Command
    class Up < Base
      def execute
        options = {
          :provision => true,
          :provisioners => nil
        }

        opts = OptionParser.new do |opts|
          opts.banner = "Usage: vagrant up [vm-name] [--[no-]provision] [-h]"

          opts.separator ""

          opts.on("--[no-]provision", "Enable or disable provisioning") do |p|
            options[:provision] = p
          end

          opts.on("--provision-with x,y,z", Array,
                  "Enable only certain provisioners, by type.") do |list|
            options[:provisioners] = list
          end
        end

        # Parse the options
        argv = parse_options(opts)
        return if !argv

        # Parameters to send to actions
        action_params = {
          "provision.enabled" => options[:provision],
          "provision.types"   => options[:provisioners]
        }

        # Go over each VM and bring it up
        @logger.debug("'Up' each target VM...")
        with_target_vms(argv[0]) do |vm|
          if vm.created?
            @logger.info("Booting: #{vm.name}")
            vm.ui.info I18n.t("vagrant.commands.up.vm_created")
            vm.start(action_params)
          else
            @logger.info("Creating: #{vm.name}")
            vm.up(action_params)
          end
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 2 rubygems

Version Path
vagrantup-1.0.0 lib/vagrant/command/up.rb
vagrantup-0.9.99.2 lib/vagrant/command/up.rb
vagrantup-0.9.99.1 lib/vagrant/command/up.rb
vagrantup-0.9.7 lib/vagrant/command/up.rb
vagrantup-0.9.6 lib/vagrant/command/up.rb
vagrantup-0.9.5 lib/vagrant/command/up.rb
vagrantup-0.9.4 lib/vagrant/command/up.rb
vagrantup-0.9.3 lib/vagrant/command/up.rb
vagrantup-0.9.2 lib/vagrant/command/up.rb
vagrantup-0.9.1 lib/vagrant/command/up.rb
vagrantup-0.9.0 lib/vagrant/command/up.rb
vagrant-1.0.0 lib/vagrant/command/up.rb
vagrant-0.9.7 lib/vagrant/command/up.rb
vagrant-0.9.5 lib/vagrant/command/up.rb
vagrant-0.9.4 lib/vagrant/command/up.rb
vagrant-0.9.3 lib/vagrant/command/up.rb
vagrant-0.9.2 lib/vagrant/command/up.rb
vagrant-0.9.1 lib/vagrant/command/up.rb
vagrant-0.9.0 lib/vagrant/command/up.rb