class Naginata::Runner
Public Class Methods
run() { |self, nagios_server, svcs| ... }
click to toggle source
# File lib/naginata/runner.rb, line 7 def self.run(&block) nagios_servers = Configuration.env.filter(Configuration.env.nagios_servers) services = Configuration.env.filter_service(Configuration.env.services) user = Configuration.env.fetch(:nagios_server_options)[:run_command_as] run_backend(nagios_servers) do |nagios_server| svcs = Configuration::Filter.new(:nagios_server, nagios_server).filter_service(services) if user as(user) { yield self, nagios_server, svcs } else yield self, nagios_server, svcs end end end
run_locally() { |nagios_server, svcs| ... }
click to toggle source
# File lib/naginata/runner.rb, line 22 def self.run_locally(&block) nagios_servers = Configuration.env.filter(Configuration.env.nagios_servers) services = Configuration.env.filter_service(Configuration.env.services) nagios_servers.each do |nagios_server| svcs = Configuration::Filter.new(:nagios_server, nagios_server).filter_service(services) yield nagios_server, svcs end end
Private Class Methods
run_backend(nagios_servers, options = {}, &block)
click to toggle source
# File lib/naginata/runner.rb, line 33 def self.run_backend(nagios_servers, options = {}, &block) SSHKit::Coordinator.new(nagios_servers).each(options, &block) end