Class/Module Index [+]

Quicksearch

Chef::Provider::Service::Gentoo

Public Instance Methods

define_resource_requirements() click to toggle source
# File lib/chef/provider/service/gentoo.rb, line 45
def define_resource_requirements
  requirements.assert(:all_actions) do |a|
    a.assertion { ::File.exists?("/sbin/rc-update") } 
    a.failure_message Chef::Exceptions::Service, "/sbin/rc-update does not exist"
    # no whyrun recovery -t his is a core component whose presence is
    # unlikely to be affected by what we do in the course of a chef run
  end

  requirements.assert(:all_actions) do |a|
    a.assertion { @found_script }
    # No failure, just informational output from whyrun 
    a.whyrun "Could not find service #{@new_resource.service_name} under any runlevel"
  end
end
disable_service() click to toggle source
# File lib/chef/provider/service/gentoo.rb, line 64
def disable_service()
  run_command(:command => "/sbin/rc-update del #{@new_resource.service_name} default")
end
enable_service() click to toggle source
# File lib/chef/provider/service/gentoo.rb, line 60
def enable_service()
  run_command(:command => "/sbin/rc-update add #{@new_resource.service_name} default")
end
load_current_resource() click to toggle source
# File lib/chef/provider/service/gentoo.rb, line 24
def load_current_resource

  @new_resource.supports[:status] = true
  @new_resource.supports[:restart] = true
  @found_script = false
  super

  @current_resource.enabled(
    Dir.glob("/etc/runlevels/**/#{@current_resource.service_name}").any? do |file|
      @found_script = true
      exists = ::File.exists? file
      readable = ::File.readable? file
      Chef::Log.debug "#{@new_resource} exists: #{exists}, readable: #{readable}"
      exists and readable
    end
  )
  Chef::Log.debug "#{@new_resource} enabled: #{@current_resource.enabled}"

  @current_resource
end

[Validate]

Generated with the Darkfish Rdoc Generator 2.