Advertisement
Guest User

Untitled

a guest
Jan 30th, 2015
207
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.79 KB | None | 0 0
  1. # unicorn
  2.  
  3. description "unicorn ruby app server"
  4.  
  5. start on (local-filesystems and net-device-up IFACE=lo and runlevel [2345])
  6. stop on runlevel [!2345]
  7.  
  8. env WORKDIR=/data
  9. env PIDFILE=/data/tmp/pids/unicorn.pid
  10. env CFGFILE=/data/config/unicorn.rb
  11. env CHOWN=deploy:deploy
  12.  
  13. respawn
  14.  
  15. script
  16. trap "start-stop-daemon --signal HUP --stop --pidfile $PIDFILE" HUP
  17. [ -e $PIDFILE ] && {
  18. pid=$(cat $PIDFILE)
  19. while kill -0 $pid &>/dev/null; do sleep 2; done
  20. } || {
  21. start-stop-daemon --start --pidfile "$PIDFILE" --chdir "$WORKDIR" --chuid "$CHOWN" --exec "$WORKDIR/bin/unicorn.sh" -- -c "$CFGFILE"
  22. }
  23. end script
  24.  
  25. pre-stop script
  26. [ -e $PIDFILE ] && kill -0 $(cat $PIDFILE) &>/dev/null && {
  27. start-stop-daemon --signal USR2 --stop --pidfile "$PIDFILE"
  28. start # don't send TERM and KILL!
  29. }
  30. end script
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement