| @@ -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=${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 | |||