Class: PoiseService::ServiceProviders::Inittab

Inherits:
Base
  • Object
show all
Defined in:
lib/poise_service/service_providers/inittab.rb

Overview

Since:

  • 1.0.0

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.provides_auto?(node, resource) ⇒ Boolean

Returns:

  • (Boolean)

Since:

  • 1.0.0



27
28
29
# File 'lib/poise_service/service_providers/inittab.rb', line 27

def self.provides_auto?(node, resource)
  ::File.exist?('/etc/inittab')
end

Instance Method Details

#action_disableObject

Don't try to stop when disabling because we can't.

Since:

  • 1.0.0



36
37
38
39
40
41
# File 'lib/poise_service/service_providers/inittab.rb', line 36

def action_disable
  disable_service
  notifying_block do
    destroy_service
  end
end

#action_reloadObject

Since:

  • 1.0.0



57
58
59
60
# File 'lib/poise_service/service_providers/inittab.rb', line 57

def action_reload
  return if options['never_reload']
  Process.kill(new_resource.reload_signal, pid) if pid
end

#action_restartObject

Since:

  • 1.0.0



51
52
53
54
55
# File 'lib/poise_service/service_providers/inittab.rb', line 51

def action_restart
  return if options['never_restart']
  # Just kill it and let init restart it.
  Process.kill(new_resource.stop_signal, pid) if pid
end

#action_startObject

Since:

  • 1.0.0



43
44
45
# File 'lib/poise_service/service_providers/inittab.rb', line 43

def action_start
  Chef::Log.debug("[#{new_resource}] Inittab services are always started.")
end

#action_stopObject

Raises:

  • (NotImplementedError)

Since:

  • 1.0.0



47
48
49
# File 'lib/poise_service/service_providers/inittab.rb', line 47

def action_stop
  raise NotImplementedError.new("[#{new_resource}] Inittab services cannot be stopped")
end

#pidObject

Since:

  • 1.0.0



31
32
33
# File 'lib/poise_service/service_providers/inittab.rb', line 31

def pid
  IO.read(pid_file).to_i if ::File.exist?(pid_file)
end