#! /bin/sh # Copyright (c) 2006-2016 WANdisco,Inc. Pleasanton,CA,USA # All rights reserved. # # Author: WANdisco Support Staff # # /etc/init.d/suse-repd # ### BEGIN INIT INFO # Provides: wandiscoproxy # Required-Start: $local_fs $network syslog # X-UnitedLinux-Should-Start: $named $time sendmail # Required-Stop: # Default-Start: 3 5 # Default-Stop: 0 1 2 6 # Description: WANdisco Proxy Service ### END INIT INFO # Start: Please change to your env USER="wandisco" WD_AGENT_TYPE="cvs" # or "svn" WD_AGENT_NAME="${WD_AGENT_TYPE}replicator" # or cvssecurityagent or failoveragent WD_DISPLAY_NAME="WANdisco Replicator daemon" WD_AGENT_HOME="/home/${USER}/${WD_AGENT_TYPE}-replicator" # or cvs-security or svn-security WD_AGENT_OPTS="-wdog -email scmadmins@wandisco.com" export JAVA_HOME="/export/share/apps/jdks/1.5.0" # Stop: Please change to your env WD_AGENT_BIN="${WD_AGENT_HOME}/bin/${WD_AGENT_NAME}" WD_AGENT_CONF="${WD_AGENT_HOME}/config/prefs.xml" PID_FILE="${WD_AGENT_HOME}/logs/my.pid" JAVA_PID="${WD_AGENT_HOME}/logs/java.pid" . /etc/rc.status rc_reset ulimit -S -c 0 >/dev/null 2>&1 ulimit -n 65000 >/dev/null 2>&1 # Check for missing binary if [ ! -x ${WD_AGENT_BIN} ]; then echo -n >&2 "${WD_DISPLAY_NAME}, ${WD_AGENT_BIN} is not installed. " rc_status -s exit 5 fi case "$1" in start) echo -n "Starting ${WD_DISPLAY_NAME} " if [ ! -f ${WD_AGENT_CONF} ]; then echo -n >&2 "WANdisco Proxy configuration file, ${WD_AGENT_CONF} does not exist. " rc_status -s exit 6 fi checkproc -p ${PID_FILE} ${WD_AGENT_BIN} case $? in 0) echo -n "- Warning: daemon already running. " ;; 1) echo -n "- Warning: ${PID_FILE} exists. " ;; esac startproc -u ${USER} -p ${PID_FILE} ${WD_AGENT_BIN} ${WD_AGENT_OPTS} rc_status -v ;; stop) echo -n "Shutting down ${WD_DISPLAY_NAME} " checkproc -p ${PID_FILE} ${WD_AGENT_BIN} || \ echo -n " Warning: daemon not running. " su ${USER} -c "${WD_AGENT_HOME}/bin/shutdown" > /var/log/${WD_AGENT_NAME}.log 2>&1 killproc -p ${PID_FILE} -t 10 ${WD_AGENT_BIN} rc_status -v ;; restart) $0 stop $0 start rc_status ;; force-reload|reload) echo -n "Reloading ${WD_DISPLAY_NAME} " checkproc -p ${PID_FILE} ${WD_AGENT_BIN} && \ touch ${PID_FILE} || \ echo -n >&2 " Warning: daemon not running. " kill `cat ${WD_AGENT_HOME}/logs/java.pid` rc_status -v ;; status) echo -n "Checking for ${WD_DISPLAY_NAME}" checkproc -p ${PID_FILE} ${WD_AGENT_BIN} rc_status -v ;; *) echo "Usage: $0 {start|stop|status|restart|force-reload|reload}" exit 1 ;; esac rc_exit