1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- #!/bin/sh
- #
- # /etc/rc.d/init.d/gogs
- #
- # Runs the Gogs
- #
- #
- # chkconfig: - 85 15
- #
- ### BEGIN INIT INFO
- # Provides: gogs
- # Required-Start: $remote_fs $syslog
- # Required-Stop: $remote_fs $syslog
- # Should-Start: mysql postgresql
- # Should-Stop: mysql postgresql
- # 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"
- LOCKFILE=/var/lock/subsys/gogs
- LOGPATH=${GOGS_HOME}/log
- LOGFILE=${LOGPATH}/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
- # exit if logpath dir is not created.
- [ -x ${LOGPATH} ] || exit 0
- DAEMON_OPTS="--check $NAME"
- # 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 "${GOGS_PATH} web > ${LOGFILE} 2>&1 &"
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && touch ${LOCKFILE}
-
- return $RETVAL
- }
- stop() {
- cd ${GOGS_HOME}
- echo -n "Shutting down ${SERVICENAME}: "
- killproc ${NAME}
- RETVAL=$?
- echo
- [ $RETVAL = 0 ] && rm -f ${LOCKFILE}
- }
- case "$1" in
- start)
- status ${NAME} > /dev/null 2>&1 && exit 0
- start
- ;;
- stop)
- stop
- ;;
- status)
- status ${NAME}
- ;;
- restart)
- stop
- start
- ;;
- reload)
- stop
- start
- ;;
- *)
- echo "Usage: ${NAME} {start|stop|status|restart}"
- exit 1
- ;;
- esac
- exit $RETVAL
|