class Liebre::Runner
Constants
- RETRY_INTERVAL
Attributes
engine[R]
Public Class Methods
new(engine: Liebre.engine)
click to toggle source
# File lib/liebre/runner.rb, line 6 def initialize engine: Liebre.engine @engine = engine end
Public Instance Methods
run(only: nil)
click to toggle source
# File lib/liebre/runner.rb, line 10 def run only: nil setup_signals engine.start(only: only) sleep rescue => e sleep(RETRY_INTERVAL) retry end
Private Instance Methods
do_stop()
click to toggle source
# File lib/liebre/runner.rb, line 26 def do_stop Thread.new { engine.stop }.join end
setup_signals()
click to toggle source
# File lib/liebre/runner.rb, line 21 def setup_signals Signal.trap("TERM") { do_stop; exit } Signal.trap("USR1") { do_stop; exit } end