Module: Nerve::Utils

Included in:
Nerve, Reporter::Base, ServiceCheck::BaseServiceCheck, ServiceWatcher
Defined in:
lib/nerve/utils.rb

Instance Method Summary collapse

Instance Method Details

#responsive_sleep(seconds, tick = 1, &should_exit) ⇒ Object



8
9
10
11
12
13
14
15
# File 'lib/nerve/utils.rb', line 8

def responsive_sleep(seconds, tick=1, &should_exit)
  nap_time = seconds
  while nap_time > 0
    break if (should_exit && should_exit.call)
    sleep [nap_time, tick].min
    nap_time -= tick
  end
end

#safe_run(command) ⇒ Object



3
4
5
6
# File 'lib/nerve/utils.rb', line 3

def safe_run(command)
  res = `#{command}`.chomp
  raise "command '#{command}' failed to run:\n#{res}" unless $?.success?
end