2 w.name = "daemon-events"
4 w.start = '/usr/local/bin/ruby ' + File.join(File.dirname(__FILE__), *%w[simple_server.rb]) + ' start'
5 w.stop = '/usr/local/bin/ruby ' + File.join(File.dirname(__FILE__), *%w[simple_server_stop.rb])
6 w.pid_file = '/var/run/daemon-events.pid'
7 w.log = File.join(File.dirname(__FILE__), 'daemon_events.log')
9 w.behavior(:clean_pid_file)
11 # determine the state on startup
12 w.transition(:init, { true => :up, false => :start }) do |on|
13 on.condition(:process_running) do |c|
18 # determine when process has finished starting
19 w.transition([:start, :restart], :up) do |on|
20 on.condition(:process_running) do |c|
25 on.condition(:tries) do |c|
31 # start if process is not running
32 w.transition(:up, :start) do |on|
33 on.condition(:process_exits)