Sha256: 4c4186828777436df1a409fea1d484a7ea16c4d264ea394bca52b3b23d1d4055

Contents?: true

Size: 644 Bytes

Versions: 1

Compression:

Stored size: 644 Bytes

Contents

# frozen_string_literal: true

module PsmDeadSimpleDeploymentTools
  # include PsmDeadSimpleDeploymentTools::Packages
  # in order to manipulate files
  module Packages
    # nodoc
    class PackageManager
      class UnknownPackageManager < StandardError; end
      extend Forwardable
      def_delegators :os_package_manager, :install_packages, :remove_packages

      private

      def os_package_manager
        return @os_package_manager if defined? @os_package_manager

        return @os_package_manager = AptManager.new if system("which apt")

        raise UnknownPackageManager, "unknown package manager"
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
psm_dead_simple_deployment_tools-0.1.1 lib/psm_dead_simple_deployment_tools/packages/package_manager.rb