Advertisement
Guest User

Untitled

a guest
Oct 16th, 2012
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.62 KB | None | 0 0
  1. #!/bin/bash
  2. #
  3. # Init file for GitlabHQ daemon
  4. #
  5. # chkconfig: 2345 55 25
  6. # description: GitlabHQ server daemon
  7. #
  8. # processname: gitlabhqd
  9. # pidfile: /tmp/gitlabhqd.pid
  10.  
  11. # source function library
  12. . /etc/rc.d/init.d/functions
  13.  
  14. RETVAL=0
  15. LOCK_FILE="/var/lock/gitlabhqd"
  16. PID_FILE="/tmp/gitlabhqd.pid"
  17. PROG="gitlabhqd"
  18. BUNDLE="/usr/local/bin/bundle"
  19. GITLABHQ_HOME="/var/www/gitlabhq"
  20. GITLABHQ_PORT=3000
  21. GITLBAHQ_EXEC="$BUNDLE exec rails s -e production -d -p $GITLABHQ_PORT -P $PID_FILE"
  22.  
  23. do_check_pid() {
  24.     if [ -f $PID_FILE ]; then
  25.         PID=`cat $PID_FILE`
  26.         RUNNING=`ps --pid $PID | wc -l`
  27.     else
  28.         PID=0
  29.         RUNNING=0
  30.     fi
  31. }
  32.  
  33. start() {
  34.     do_check_pid
  35.     if [ $RUNNING != 2 ] ; then
  36.         echo -n $"Starting $PROG: "
  37.         cd $GITLABHQ_HOME
  38.         $GITLBAHQ_EXEC
  39.         bundle exec rails s -e production -d -p $PORT -P $PID_FILE
  40.         sleep 1
  41.         if [ -f $PID_FILE ] ; then
  42.             success
  43.         else
  44.             failure
  45.         fi
  46.         RETVAL=$?
  47.     else
  48.         echo -n $"$PROG already running"
  49.         failure
  50.     fi
  51.     [ "$RETVAL" = 0 ] && touch $LOCK_FILE
  52.     echo
  53. }
  54.  
  55. stop() {
  56.     do_check_pid
  57.     echo -n $"Stopping $PROG: "
  58.     if [ $RUNNING != 2 ] ; then
  59.         failure $"Stopping $PROG"
  60.     else
  61.         killproc -p $PID_FILE
  62.     fi
  63.     RETVAL=$?
  64.     [ "$RETVAL" = 0 ] && rm -f $LOCK_FILE
  65.     echo
  66. }
  67.  
  68. case "$1" in
  69.     start)
  70.         start
  71.         ;;
  72.     stop)
  73.         stop
  74.         ;;
  75.     status)
  76.         status $PROG
  77.         RETVAL=$?
  78.         ;;
  79.     restart)
  80.         stop
  81.         start
  82.         ;;
  83.     condrestart)
  84.         if [ -f $LOCK_FILE ] ; then
  85.             if [ "$RETVAL" = 0 ] ; then
  86.                 stop
  87.                 # avoid race
  88.                 sleep 5
  89.                 start
  90.             fi
  91.         fi
  92.         ;;
  93.     *)
  94.         echo $"Usage: $0 {start|stop|restart|condrestart}"
  95.         RETVAL=1
  96. esac
  97.  
  98. exit $RETVAL
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement