Archive for July 2011

Houdini's Sesinetd startup using runscript.sh

Again for those with DIY or Gentoo based runscript systems, here is a startup I wacked up for Houdini's License manager sesinetd

#!/sbin/runscript

opts="reload"

depend() {
use logger dns
}

PIDFILE_SAFE=/var/run/${SVCNAME}_safe.pid
PIDFILE=/var/run/${SVCNAME}.pid
LOG_FILE=/var/log/${SVCNAME}.log
source /etc/whereveryourbloodyenvis
SESI=/usr/lib/sesi # Directory where sesinetd is installed
SESINETD=${SESI}/sesinetd # Name of sesinetd executable to run
SESICTRL=${SESI}/sesictrl # Name of sesictrl executable to run
SESINETD_START=${SESI}/sesinetd_safe # Script to start sesinetd
OPTIONS=


start() {

ebegin "Starting ${SVCNAME}"
start-stop-daemon --start --chdir ${SESI} \
--exec ${SESINETD_START} --background \
--make-pidfile --pidfile ${PIDFILE_SAFE} \
-- --sesi=${SESI} --sesinetd=${SESINETD} \
--log-file=${LOG_FILE} --pid-file=${PIDFILE} ${OPTIONS}
eend $?
}

stop() {
ebegin "Stopping ${SVCNAME}"
kill -9 `cat ${PIDFILE_SAFE}` && kill -9 `cat ${PIDFILE}`
eend $?
}

reload() {
ebegin "Reloading ${SVCNAME}"
kill -9 `cat ${PIDFILE_SAFE}` && kill -9 `cat ${PIDFILE}`
start-stop-daemon --start --chdir ${SESI} \
--exec ${SESINETD_START} --background \
--make-pidfile --pidfile ${PIDFILE_SAFE} \
-- --sesi=${SESI} --sesinetd=${SESINETD} \
--log-file=${LOG_FILE} --pid-file=${PIDFILE} ${OPTIONS}
eend $?
}

Houdini Hqueue startup for runscript.sh

If you are not a Redhat or debian user, eg. LFS/Gentoo or a DIY system like me and wanted a runscript.sh style startup for Houdini's Hqueue here is a working server startup.

#!/sbin/runscript

opts="reload"

depend() {
        use logger dns
}

PIDFILE=/var/run/${SVCNAME}.pid
source /etc/whereveryourbloodyenvstuffis
HQ_SERVER_PATH=/opt/hqueue

start() {

        ebegin "Starting ${SVCNAME}"
        start-stop-daemon --start --chdir ${HQ_SERVER_PATH} \
            --exec ${HQ_SERVER_PATH}/bin/paster serve \
            --make-pidfile --pidfile ${PIDFILE} --background \
            -- --log-file ${HQ_SERVER_PATH}/errors.log \
            hqserver.ini start
        eend $?
}

stop() {
        ebegin "Stopping ${SVCNAME}"
        start-stop-daemon --stop --quiet \
            --pidfile ${PIDFILE}
        eend $?
}

reload() {
        ebegin "Reloading ${SVCNAME}"
        start-stop-daemon --stop --quiet \
            --pidfile ${PIDFILE}
        start-stop-daemon --start --chdir ${HQ_SERVER_PATH} \
            --exec ${HQ_SERVER_PATH}/bin/paster serve \
            --make-pidfile --pidfile ${PIDFILE} --background \
            -- --log-file ${HQ_SERVER_PATH}/errors.log \
            hqserver.ini start
        eend $?
}