Sha256: 7566de2b6d5d7478a94c1151e2f98183227adb1c85418c07f7425cc1314b8174
Contents?: true
Size: 706 Bytes
Versions: 32
Compression:
Stored size: 706 Bytes
Contents
require 'forwardable' module DockerSync module Dependencies module PackageManager class << self extend Forwardable def_delegators :package_manager, :available?, :ensure!, :install_package end def self.package_manager return @package_manager if defined? @package_manager supported_package_managers.each do |package_manager| return @package_manager = package_manager if package_manager.available? end @package_manager = PackageManager::None end def self.supported_package_managers ObjectSpace.each_object(::Class).select { |klass| klass < self::Base && klass != self::None } end end end end
Version data entries
32 entries across 32 versions & 1 rubygems