#!/sbin/openrc-run # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 description="Gatling high performance web server init script" extra_started_commands="reload" depend() { need net } checkconfig() { # Verify UID is valid for running process. if ! id ${GATLING_UID} >/dev/null 2>&1; then ewarn "User ${GATLING_UID} not found!" return 1 fi # Set gatling run opts if yesno ${VHOST};then VHOST=-v;else VHOST=-V;fi if yesno ${SSL};then SSL=-e;else SSL=-E;fi if yesno ${DIR_INDEXING};then DIR_INDEXING=-d;else DIR_INDEXING=-D;fi if yesno ${FTP}; then FTP=-f;else FTP=-F;fi if yesno ${FTP_AUTH}; then FTP_AUTH=-l;else unset FTP_AUTH;fi if yesno ${FTP_UP};then unset FTP_UP;else FTP_UP=-U;fi if yesno ${TRANS_PROXY};then TRANS_PROXY=-t;else unset TRANS_PROXY;fi } start() { checkconfig || return 1 ebegin "Starting gatling" start-stop-daemon --start --quiet --background \ --make-pidfile --pidfile ${PID} \ --name gatling --exec /usr/bin/gatling -- \ -T ${HTTP_TIMEOUT} -i ${IP} -p ${PORT} -P ${PREFETCH} \ ${VHOST} -c ${ROOTDIR} ${DIR_INDEXING} ${TRANS_PROXY} \ -u ${GATLING_UID} ${FTP} -T ${FTP_TIMEOUT} \ ${FTP_AUTH} ${FTP_UPLOADS} eend $? } stop() { ebegin "Stopping gatling" start-stop-daemon --quiet --stop --pidfile ${PID} eend $? } reload() { if ! service_started "${SVCNAME}" ; then eerror "${SVCNAME} isn't running" return 1 fi checkconfig || return 1 ebegin "Sending gatling the HUP signal" start-stop-daemon --quiet --signal HUP --pidfile ${PID} ebegin "Restarting gatling server" start-stop-daemon --start --quiet --background \ --make-pidfile --pidfile ${PID} \ --name gatling --exec /usr/bin/gatling -- \ -T ${HTTP_TIMEOUT} -i ${IP} -p ${PORT} -P ${PREFETCH} \ ${VHOST} -c ${ROOTDIR} ${DIR_INDEXING} ${TRANS_PROXY} \ -u ${GATLING_UID} ${FTP} -T ${FTP_TIMEOUT} \ ${FTP_AUTH} ${FTP_UPLOADS} eend $? }