# class 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
Calls superclass method Chef::Provider::Service::Simple#load_current_resource

    # 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