class Serverkit::Resources::RbenvDependentPackages

Constants

PACKAGE_NAMES_FOR_APT
PACKAGE_NAMES_FOR_PACMAN
PACKAGE_NAMES_FOR_YUM
PACKAGE_NAMES_FOR_ZYPPER

Public Instance Methods

apply() click to toggle source

@note Override

# File lib/serverkit/resources/rbenv_dependent_packages.rb, line 55
def apply
  packages.each(&:run_apply)
end
check() click to toggle source

@note Override

# File lib/serverkit/resources/rbenv_dependent_packages.rb, line 60
def check
  packages.all?(&:check)
end

Private Instance Methods

package_names() click to toggle source

@todo @return [Array<String>] @example [“gcc”, “git”, “gdbm-devel”, …]

# File lib/serverkit/resources/rbenv_dependent_packages.rb, line 78
def package_names
  @package_names ||= begin
    case get_command_from_identifier(:install_package, "dummy")
    when /\bapt-get\b/
      PACKAGE_NAMES_FOR_APT
    when /\bpacman\b/
      PACKAGE_NAMES_FOR_PACMAN
    when /\byum\b/
      PACKAGE_NAMES_FOR_YUM
    when /\bzypper\b/
      PACKAGE_NAMES_FOR_ZYPPER
    else
      []
    end
  end
end
packages() click to toggle source

@return [Array<Serverkit::Resources::Package>]

# File lib/serverkit/resources/rbenv_dependent_packages.rb, line 67
def packages
  package_names.map do |package_name|
    Serverkit::Resources::Package.new(@recipe, "name" => package_name).tap do |package|
      package.backend = backend
    end
  end
end