Class: Evm::Command::Install

Inherits:
Object
  • Object
show all
Defined in:
lib/evm/command/install.rb

Instance Method Summary collapse

Constructor Details

#initialize(package_name, options = {}) ⇒ Install

Returns a new instance of Install.



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/evm/command/install.rb', line 4

def initialize(package_name, options = {})
  unless package_name
    raise Evm::Exception.new('The install command requires an argument')
  end

  package = Evm::Package.find(package_name)

  if options[:force]
    package.uninstall!
  end

  if package.installed?
    raise Evm::Exception.new("Already installed #{package_name}")
  else
    package.install!

    if options[:use]
      package.use!
    end

    STDOUT.puts "Successfully installed #{package_name}"
  end
end