class Chef::Provider::Package::Paludis
Public Instance Methods
Source
# File lib/chef/provider/package/paludis.rb, line 56 def install_package(name, version) pkg = if version "=#{name}-#{version}" else new_resource.package_name.to_s end shell_out!("cave", "-L", "warning", "resolve", "-x", options, pkg) end
Source
# File lib/chef/provider/package/paludis.rb, line 30 def load_current_resource @current_resource = Chef::Resource::Package.new(new_resource.package_name) current_resource.package_name(new_resource.package_name) logger.trace("Checking package status for #{new_resource.package_name}") installed = false re = Regexp.new("(.*)[[:blank:]](.*)[[:blank:]](.*)$") shell_out!("cave", "-L", "warning", "print-ids", "-M", "none", "-m", new_resource.package_name, "-f", "%c/%p %v %r\n").stdout.each_line do |line| res = re.match(line) next if res.nil? case res[3] when "accounts", "installed-accounts" next when "installed" installed = true current_resource.version(res[2]) else @candidate_version = res[2] end end current_resource end
Source
# File lib/chef/provider/package/paludis.rb, line 79 def purge_package(name, version) remove_package(name, version) end
Source
# File lib/chef/provider/package/paludis.rb, line 69 def remove_package(name, version) pkg = if version "=#{new_resource.package_name}-#{version}" else new_resource.package_name.to_s end shell_out!("cave", "-L", "warning", "uninstall", "-x", options, pkg) end
Source
# File lib/chef/provider/package/paludis.rb, line 65 def upgrade_package(name, version) install_package(name, version) end