module Kanrisuru::Nginx::Service

Public Instance Methods

master_pid() click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 82
def master_pid
  process = master_process
  return unless process.instance_of?(Kanrisuru::Core::System::ProcessInfo)

  process.pid
end
master_process() click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 75
def master_process
  result = @host.ps
  return result if result.failure?

  result.find { |process| process.command.include?('nginx: master') }
end
reload(opts = {}) click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 57
def reload(opts = {})
  command = Kanrisuru::Command.new('nginx')
  command.append_arg('-c', opts[:config])
  command.append_arg('-s', 'reload')

  @host.execute_shell(command)

  Kanrisuru::Result.new(command)
end
restart(opts = {}) click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 48
def restart(opts = {})
  return false unless running?

  result = stop
  return false unless result.success?

  start(opts)
end
running?() click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 67
def running?
  process = master_process
  return false if !process || process.instance_of?(Kanrisuru::Result)

  process.respond_to?(:pid) &&
    process.pid >= 0
end
start(opts = {}) click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 20
def start(opts = {})
  command = Kanrisuru::Command.new('nginx')
  command.append_arg('-c', opts[:config])

  @host.execute_shell(command)

  Kanrisuru::Result.new(command)
end
stop() click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 39
def stop
  command = Kanrisuru::Command.new('nginx')
  command.append_arg('-s', 'stop')

  @host.execute_shell(command)

  Kanrisuru::Result.new(command)
end
test(opts = {}) click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 29
def test(opts = {})
  command = Kanrisuru::Command.new('nginx')
  command.append_arg('-c', opts[:config])
  command.append_flag('-t')

  @host.execute_shell(command)

  Kanrisuru::Result.new(command)
end
worker_processess() click to toggle source
# File lib/kanrisuru/nginx/service.rb, line 89
def worker_processess
  result = @host.ps
  return result if result.failure?

  result.select { |process| process.command.include?('nginx: worker') }
end