changeset 2114:0dc18e9a3150 beta

added arch example init.d
author Marcin Kuzminski <marcin@python-works.com>
date Thu, 08 Mar 2012 05:30:41 +0200
parents 5a1a07567b18
children 8dfb265fc954
files init.d/rhodecode-daemon4
diffstat 1 files changed, 70 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/init.d/rhodecode-daemon4	Thu Mar 08 05:30:41 2012 +0200
@@ -0,0 +1,70 @@
+#!/bin/bash
+###########################################
+#### THIS IS AN ARCH LINUX RC.D SCRIPT ####
+###########################################
+
+. /etc/rc.conf
+. /etc/rc.d/functions
+
+DAEMON=rhodecode
+APP_HOMEDIR="/srv"
+APP_PATH="$APP_HOMEDIR/$DAEMON"
+CONF_NAME="production.ini"
+LOG_FILE="/var/log/$DAEMON.log"
+PID_FILE="/run/daemons/$DAEMON"
+APPL=/usr/bin/paster
+RUN_AS="*****"
+
+ARGS="serve --daemon \
+--user=$RUN_AS \
+--group=$RUN_AS \
+--pid-file=$PID_FILE \
+--log-file=$LOG_FILE \
+$APP_PATH/$CONF_NAME"
+
+[ -r /etc/conf.d/$DAEMON ] && . /etc/conf.d/$DAEMON
+
+if [[ -r $PID_FILE ]]; then
+    read -r PID < "$PID_FILE"
+    if [[ $PID && ! -d /proc/$PID ]]; then
+        unset PID
+        rm_daemon $DAEMON
+    fi
+fi
+
+case "$1" in
+start)
+    stat_busy "Starting $DAEMON"
+    export HOME=$APP_PATH
+    [ -z "$PID" ] && $APPL $ARGS &>/dev/null
+    if [ $? = 0 ]; then
+        add_daemon $DAEMON
+        stat_done
+    else
+        stat_fail
+        exit 1
+    fi
+    ;;
+stop)
+    stat_busy "Stopping $DAEMON"
+    [ -n "$PID" ] && kill $PID &>/dev/null 
+    if [ $? = 0 ]; then
+        rm_daemon $DAEMON
+        stat_done
+    else
+        stat_fail
+        exit 1
+    fi
+    ;;
+restart)
+    $0 stop
+    sleep 1
+    $0 start
+    ;;
+status)
+    stat_busy "Checking $name status";
+    ck_status $name
+    ;;
+*)
+    echo "usage: $0 {start|stop|restart|status}"
+esac
\ No newline at end of file