Class: DanarchyDeploy::Services::Init::Openrc

Inherits:
Object
  • Object
show all
Defined in:
lib/danarchy_deploy/services/init/openrc.rb

Instance Method Summary collapse

Constructor Details

#initialize(service, options) ⇒ Openrc

Returns a new instance of Openrc.



6
7
8
9
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 6

def initialize(service, options)
  @service = service
  @options = options
end

Instance Method Details

#disableObject



65
66
67
68
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 65

def disable
  cmd = "rc-update del #{@service} default"
  DanarchyDeploy::Helpers.run_command(cmd, @options)
end

#enableObject



60
61
62
63
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 60

def enable
  cmd = "rc-update add #{@service} default"
  DanarchyDeploy::Helpers.run_command(cmd, @options)
end

#reloadObject



39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 39

def reload
  status = self.status

  cmd = if status[:stderr]
          # status[:stdout].include?('running')
          # This used to check for status "running"; and previously "started".
          # Too specific so I've disabled it since I don't remember what this exception was for, originally.
          puts "        |! Service: #{@service} is not running. Starting it up instead."
          "rc-service #{@service} start"
        else
          "rc-service #{@service} reload"
        end

  DanarchyDeploy::Helpers.run_command(cmd, @options)
end

#restartObject



55
56
57
58
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 55

def restart
  cmd = "rc-service #{@service} restart"
  DanarchyDeploy::Helpers.run_command(cmd, @options)
end

#startObject



17
18
19
20
21
22
23
24
25
26
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 17

def start
  cmd = "rc-service #{@service} start"
  status = self.status

  if status[:stdout].include?('started')
    return status
  else
    DanarchyDeploy::Helpers.run_command(cmd, @options)
  end
end

#statusObject



11
12
13
14
15
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 11

def status
  cmd = "rc-service #{@service} status"
  return { stdout: "Fake run: started", stderr: nil } if @options[:pretend]
  DanarchyDeploy::Helpers.run_command(cmd, @options)
end

#stopObject



28
29
30
31
32
33
34
35
36
37
# File 'lib/danarchy_deploy/services/init/openrc.rb', line 28

def stop
  cmd = "rc-service #{@service} stop"
  status = self.status

  if status[:stdout].include?('stopped')
    return status
  else
    DanarchyDeploy::Helpers.run_command(cmd, @options)
  end
end