Class: LinuxAdmin::Service

Inherits:
LinuxAdmin show all
Defined in:
lib/linux_admin/service.rb

Constant Summary

Constants inherited from LinuxAdmin

VERSION

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Common

#cmd, #run, #run!

Constructor Details

#initialize(id) ⇒ Service

Returns a new instance of Service.



10
11
12
# File 'lib/linux_admin/service.rb', line 10

def initialize(id)
  @id = id
end

Instance Attribute Details

#idObject

Returns the value of attribute id.



8
9
10
# File 'lib/linux_admin/service.rb', line 8

def id
  @id
end

Instance Method Details

#disableObject



25
26
27
28
29
# File 'lib/linux_admin/service.rb', line 25

def disable
  run!(cmd(:systemctl),
      :params => { nil => ["disable", "#{id}.service"] })
  self
end

#enableObject



19
20
21
22
23
# File 'lib/linux_admin/service.rb', line 19

def enable
  run!(cmd(:systemctl),
      :params => { nil => ["enable", "#{id}.service"] })
  self
end

#restartObject



43
44
45
46
47
48
49
50
51
52
53
54
55
# File 'lib/linux_admin/service.rb', line 43

def restart
  status =
    run(cmd(:service),
      :params => { nil => [id, "restart"] }).exit_status

  # attempt to manually stop/start if restart fails
  if status != 0
    self.stop
    self.start
  end

  self
end

#running?Boolean

Returns:

  • (Boolean)


14
15
16
17
# File 'lib/linux_admin/service.rb', line 14

def running?
  run(cmd(:service),
      :params => { nil => [id, "status"] }).exit_status == 0
end

#startObject



31
32
33
34
35
# File 'lib/linux_admin/service.rb', line 31

def start
  run!(cmd(:service),
      :params => { nil => [id, "start"] })
  self
end

#stopObject



37
38
39
40
41
# File 'lib/linux_admin/service.rb', line 37

def stop
  run!(cmd(:service),
      :params => { nil => [id, "stop"] })
  self
end