Sha256: e884b0692c6224d63194c0d7832fd3e1522d449a8cc7a8cdbe0956d34fb716c4

Contents?: true

Size: 998 Bytes

Versions: 5

Compression:

Stored size: 998 Bytes

Contents

require 'optparse'

require_relative "base"

module VagrantPlugins
  module CommandPlugin
    module Command
      class Install < Base
        def execute
          options = {}

          opts = OptionParser.new do |o|
            o.banner = "Usage: vagrant plugin install <name> [-h]"
            o.separator ""

            o.on("--entry-point NAME", String,
                 "The name of the entry point file for loading the plugin.") do |entry_point|
              options[:entry_point] = entry_point
            end
          end

          # Parse the options
          argv = parse_options(opts)
          return if !argv
          raise Vagrant::Errors::CLIInvalidUsage, :help => opts.help.chomp if argv.length < 1

          # Install the gem
          action(Action.action_install, {
            :plugin_entry_point => options[:entry_point],
            :plugin_name        => argv[0]
          })

          # Success, exit status 0
          0
        end
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 3 rubygems

Version Path
vagrantup-1.1.2 plugins/commands/plugin/command/install.rb
vagrantup-1.1.1 plugins/commands/plugin/command/install.rb
vagrantup-1.1.0 plugins/commands/plugin/command/install.rb
vagrant-actionio-0.0.9 vendor/bundle/bundler/gems/vagrant-c74251a1d9c0/plugins/commands/plugin/command/install.rb
vagrant-lxc-0.0.1 vendor/vagrant/plugins/commands/plugin/command/install.rb