|
@@ -0,0 +1,92 @@
|
|
|
+#!/bin/sh
|
|
|
+#
|
|
|
+# /etc/rc.d/init.d/gogs
|
|
|
+#
|
|
|
+# Runs the Gogs Go Git Service.
|
|
|
+#
|
|
|
+#
|
|
|
+# chkconfig: - 85 15
|
|
|
+#
|
|
|
+
|
|
|
+### BEGIN INIT INFO
|
|
|
+# Provides: gogs
|
|
|
+# Required-Start: $remote_fs $syslog
|
|
|
+# Required-Stop: $remote_fs $syslog
|
|
|
+# Default-Start: 2 3 4 5
|
|
|
+# Default-Stop: 0 1 6
|
|
|
+# Short-Description: Start gogs at boot time.
|
|
|
+# Description: Control gogs.
|
|
|
+### END INIT INFO
|
|
|
+
|
|
|
+# Source function library.
|
|
|
+. /etc/init.d/functions
|
|
|
+
|
|
|
+# Default values
|
|
|
+
|
|
|
+NAME=gogs
|
|
|
+GOGS_HOME=/home/git/gogs
|
|
|
+GOGS_PATH=${GOGS_HOME}/$NAME
|
|
|
+GOGS_USER=git
|
|
|
+SERVICENAME="Gogs Go Git Service"
|
|
|
+PID=/var/run/$NAME.pid
|
|
|
+LOCKFILE=/var/lock/subsys/gogs
|
|
|
+LOGFILE=${GOGS_HOME}/log/gogs.log
|
|
|
+RETVAL=0
|
|
|
+
|
|
|
+# Read configuration from /etc/sysconfig/gogs to override defaults
|
|
|
+[ -r /etc/sysconfig/$NAME ] && ./etc/sysconfig/$NAME
|
|
|
+
|
|
|
+# Don't do anything if nothing is installed
|
|
|
+[ -x ${GOGS_PATH} ] || exit 0
|
|
|
+
|
|
|
+DAEMON_OPTS=""
|
|
|
+
|
|
|
+# Set additional options, if any
|
|
|
+[ ! -z "$GOGS_USER" ] && DAEMON_OPTS="$DAEMON_OPTS --user=${GOGS_USER}"
|
|
|
+
|
|
|
+start() {
|
|
|
+ cd ${GOGS_HOME}
|
|
|
+ echo -n "Starting ${SERVICENAME}: "
|
|
|
+ daemon $DAEMON_OPTS --pidfile=${PID} "${GOGS_PATH} web 2>&1 > ${LOGFILE} &"
|
|
|
+ echo $! > ${PID}
|
|
|
+ RETVAL=$?
|
|
|
+ echo
|
|
|
+ [ $RETVAL = 0 ] && touch ${LOCKFILE}
|
|
|
+
|
|
|
+ return $RETVAL
|
|
|
+}
|
|
|
+
|
|
|
+stop() {
|
|
|
+ cd ${GOGS_HOME}
|
|
|
+ echo -n "Shutting down ${SERVICENAME}: "
|
|
|
+ killproc -p ${PID} ${NAME}
|
|
|
+ RETVAL=$?
|
|
|
+ echo
|
|
|
+ [ $RETVAL = 0 ] && rm -f ${LOCKFILE} ${PID}
|
|
|
+}
|
|
|
+
|
|
|
+case "$1" in
|
|
|
+ start)
|
|
|
+ status ${NAME} > /dev/null 2>&1 && exit 0
|
|
|
+ start
|
|
|
+ ;;
|
|
|
+ stop)
|
|
|
+ stop
|
|
|
+ ;;
|
|
|
+ status)
|
|
|
+ status -p ${PID} ${NAME}
|
|
|
+ ;;
|
|
|
+ restart)
|
|
|
+ stop
|
|
|
+ start
|
|
|
+ ;;
|
|
|
+ reload)
|
|
|
+ stop
|
|
|
+ start
|
|
|
+ ;;
|
|
|
+ *)
|
|
|
+ echo "Usage: ${NAME} {start|stop|status|restart}"
|
|
|
+ exit 1
|
|
|
+ ;;
|
|
|
+esac
|
|
|
+exit $RETVAL
|