Module: Uberinstaller::PackageManager

Defined in:
lib/uberinstaller/package_manager.rb,
lib/uberinstaller/package_managers/apt.rb,
lib/uberinstaller/package_managers/git.rb,
lib/uberinstaller/package_managers/base.rb,
lib/uberinstaller/package_managers/dpkg.rb

Defined Under Namespace

Classes: Apt, Base, Dpkg, Git

Class Method Summary collapse

Class Method Details

.new(type) ⇒ Object

Create a new PackageManager instance based on the type



12
13
14
15
16
17
18
19
20
# File 'lib/uberinstaller/package_manager.rb', line 12

def self.new(type)
  case type
  when 'git'    then package_manager = 'Git'
  when 'local'  then package_manager = Uberinstaller::Config.local_package_manager
  when 'remote' then package_manager = Uberinstaller::Config.remote_package_manager
  end

  ("Uberinstaller::PackageManager::" + package_manager).split('::').inject(Object) {|scope,name| scope.const_get(name)}.new
end