- #!/bin/bash
- #
- # RedHat: /etc/rc.d/init.d/gitbucket
- #
- # Starts the GitBucket server
- #
- # chkconfig: 345 60 40
- # description: Run GitBucket server
- # processname: java
- [ -f /etc/rc.d/init.d/functions ] && source /etc/rc.d/init.d/functions # RedHat
- # Default values
- GITBUCKET_HOME=/var/lib/gitbucket
- GITBUCKET_WAR_FILE=/usr/share/gitbucket/lib/gitbucket.war
- # Pull in cq settings
- [ -f /etc/sysconfig/gitbucket ] && source /etc/sysconfig/gitbucket # RedHat
- [ -f gitbucket.conf ] && source gitbucket.conf # For all systems
- # Location of the log and PID file
- LOG_FILE=$GITBUCKET_LOG_DIR/run.log
- RED='\033[1m\E[37;41m'
- GREEN='\033[1m\E[37;42m'
- OFF='\E[0m'
- RETVAL=0
- start() {
- echo -n $"Starting GitBucket server: "
- START_OPTS=
- if [ $GITBUCKET_PORT ]; then
- START_OPTS="${START_OPTS} --port=${GITBUCKET_PORT}"
- fi
- if [ $GITBUCKET_PREFIX ]; then
- START_OPTS="${START_OPTS} --prefix=${GITBUCKET_PREFIX}"
- fi
- if [ $GITBUCKET_HOST ]; then
- START_OPTS="${START_OPTS} --host=${GITBUCKET_HOST}"
- fi
- GITBUCKET_HOME="${GITBUCKET_HOME}" daemon --user=gitbucket java $GITBUCKET_JVM_OPTS -jar $GITBUCKET_WAR_FILE $START_OPTS >>$LOG_FILE 2>&1 &
- sleep 3
- pgrep -f $GITBUCKET_WAR_FILE >> $LOG_FILE 2>&1
- RETVAL=$?
- if [ $RETVAL -eq 0 ] ; then
- success "Success"
- else
- failure "Exit code $RETVAL"
- fi
- echo
- return $RETVAL
- }
- stop() {
- echo -n $"Stopping GitBucket server: "
- # Run the Java process
- pkill -f $GITBUCKET_WAR_FILE >>$LOG_FILE 2>&1
- RETVAL=$?
- if [ $RETVAL -eq 0 ] ; then
- success "GitBucket stopping"
- else
- failure "GitBucket stopping"
- fi
- echo
- return $RETVAL
- }
- restart() {
- stop
- start
- }
- case "$1" in
- start)
- start
- ;;
- stop)
- stop
- ;;
- restart)
- restart
- ;;
- status)
- pgrep -f $GITBUCKET_WAR_FILE >> $LOG_FILE 2>&1
- RETVAL=$?
- if [ $RETVAL -eq 0 ]; then
- echo $"GitBucket is running...."
- else
- echo $"GitBucket is stopped"
- fi
- ;;
- *)
- echo $"Usage: $0 [start|stop|restart|status]"
- RETVAL=2
- esac
- exit $RETVAL