You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I made an init script intended to be used with debian or ubuntu (with the servlet running by the integrated jetty server). It'd be cool if this were in the wiki.
#! /bin/sh### BEGIN INIT INFO# Provides: gitbucket# Required-Start: $remote_fs $syslog# Required-Stop: $remote_fs $syslog# Default-Start: 2 3 4 5# Default-Stop: 0 1 6# Short-Description: Gitbucket initscript# Description: Starts and stops gitbucket running as a standalone servlet.### END INIT INFO# Author: Alex Schneider# Do NOT "set -e"# PATH should only include /usr/* if it runs after the mountnfs.sh script
PATH=/sbin:/usr/sbin:/bin:/usr/bin
DESC="Gitbucket git hosting"
USERNAME=gitbucket
NAME=gitbucket
# Location to java executable
DAEMON="/usr/bin/java"# Include JVM arguments and all other arguments.
DAEMON_ARGS="-jar /srv/gitbucket/gitbucket.war --host=localhost --https=true"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME# Read configuration variable file if it is present
[ -r /etc/default/$NAME ] &&. /etc/default/$NAME# Load the VERBOSE setting and other rcS variables. /lib/init/vars.sh
# Define LSB log_* functions.# Depend on lsb-base (>= 3.2-14) to ensure that this file is present# and status_of_proc is working.. /lib/lsb/init-functions
## Function that starts the daemon/service#do_start()
{
# Return# 0 if daemon has been started# 1 if daemon was already running# 2 if daemon could not be started
start-stop-daemon --start --quiet --background --chuid $USERNAME --make-pidfile --pidfile $PIDFILE --exec $DAEMON --test > /dev/null \
||return 1
start-stop-daemon --start --background --chuid $USERNAME --make-pidfile --quiet --pidfile $PIDFILE --exec $DAEMON -- \
$DAEMON_ARGS \
||return 2
# Add code here, if necessary, that waits for the process to be ready# to handle requests from services started subsequently which depend# on this one. As a last resort, sleep for some time.
}
## Function that stops the daemon/service#do_stop()
{
# Return# 0 if daemon has been stopped# 1 if daemon was already stopped# 2 if daemon could not be stopped# other if a failure occurred
start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --pidfile $PIDFILE --name $NAME
RETVAL="$?"
[ "$RETVAL"= 2 ] &&return 2
# Wait for children to finish too if this is a daemon that forks# and if the daemon is only ever run from this initscript.# If the above conditions are not satisfied then add some other code# that waits for the process to drop all resources that could be# needed by services started subsequently. A last resort is to# sleep for some time.
start-stop-daemon --stop --quiet --oknodo --retry=0/30/KILL/5 --exec $DAEMON
[ "$?"= 2 ] &&return 2
# Many daemons don't delete their pidfiles when they exit.
rm -f $PIDFILEreturn"$RETVAL"
}
## Function that sends a SIGHUP to the daemon/service#do_reload() {
## If the daemon can reload its configuration without# restarting (for example, when it is sent a SIGHUP),# then implement that here.#
start-stop-daemon --stop --signal 1 --quiet --pidfile $PIDFILE --name $NAMEreturn 0
}
case"$1"in
start)
[ "$VERBOSE"!= no ] && log_daemon_msg "Starting $DESC""$NAME"
do_start
case"$?"in
0|1) [ "$VERBOSE"!= no ] && log_end_msg 0 ;;
2) [ "$VERBOSE"!= no ] && log_end_msg 1 ;;
esac
;;
stop)
[ "$VERBOSE"!= no ] && log_daemon_msg "Stopping $DESC""$NAME"
do_stop
case"$?"in
0|1) [ "$VERBOSE"!= no ] && log_end_msg 0 ;;
2) [ "$VERBOSE"!= no ] && log_end_msg 1 ;;
esac
;;
status)
status_of_proc "$DAEMON""$NAME"&&exit 0 ||exit$?
;;
#reload|force-reload)## If do_reload() is not implemented then leave this commented out# and leave 'force-reload' as an alias for 'restart'.##log_daemon_msg "Reloading $DESC" "$NAME"#do_reload#log_end_msg $?#;;
restart|force-reload)
## If the "reload" option is implemented then remove the# 'force-reload' alias#
log_daemon_msg "Restarting $DESC""$NAME"
do_stop
case"$?"in
0|1)
do_start
case"$?"in
0) log_end_msg 0 ;;
1) log_end_msg 1 ;; # Old process is still running*) log_end_msg 1 ;; # Failed to startesac
;;
*)
# Failed to stop
log_end_msg 1
;;
esac
;;
*)
#echo "Usage: $SCRIPTNAME {start|stop|restart|reload|force-reload}" >&2echo"Usage: $SCRIPTNAME {start|stop|status|restart|force-reload}">&2exit 3
;;
esac:
The text was updated successfully, but these errors were encountered:
Thanks,
Could you provide explanation to use your script? I can add your script with that explanation.
In additoon, we have these script in contrib. If we should put your script in our repository, please send a pull request.
ryuthky
pushed a commit
to ryuthky/gitbucket
that referenced
this issue
Jun 26, 2014
I made an init script intended to be used with debian or ubuntu (with the servlet running by the integrated jetty server). It'd be cool if this were in the wiki.
The text was updated successfully, but these errors were encountered: