File: openwrt.rb

package info (click to toggle)
puppet-agent 7.23.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 19,092 kB
  • sloc: ruby: 245,074; sh: 456; makefile: 38; xml: 33
file content (36 lines) | stat: -rw-r--r-- 825 bytes parent folder | download | duplicates (8)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Puppet::Type.type(:service).provide :openwrt, :parent => :init, :source => :init do
  desc <<-EOT
    Support for OpenWrt flavored init scripts.

    Uses /etc/init.d/service_name enable, disable, and enabled.

  EOT

  defaultfor :operatingsystem => :openwrt
  confine :operatingsystem => :openwrt

  has_feature :enableable

  def self.defpath
    ["/etc/init.d"]
  end

  def enable
    system(self.initscript, 'enable')
  end

  def disable
    system(self.initscript, 'disable')
  end

  def enabled?
    # We can't define the "command" for the init script, so we call system?
    if system(self.initscript, 'enabled') then return :true else return :false end
  end

  # Purposely leave blank so we fail back to ps based status detection
  # As OpenWrt init script do not have status commands
  def statuscmd
  end

end