#!/sbin/openrc-run # Copyright 1999-2018 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 depend() { use mysql postgresql lighttpd } FCGI_SOCKET_PATH="${RTPATH}/var/appSocket" PIDFILE="${RTPATH}/var/pid" start_pre() { checkpath -d -m 0755 -o "${RTUSER}:${RTGROUP}" "${RTPATH}/var" if [ -S "${FCGI_SOCKET_PATH}" ]; then rm -f "${FCGI_SOCKET_PATH}" fi } start_post() { ebegin "${RC_SVCNAME} starting" start-stop-daemon \ --start --exec "${RTPATH}/bin/mason_handler.fcgi" \ --make-pidfile --pidfile "${PIDFILE}" --background \ --user "${RTUSER}:${RTGROUP}" --chdir "${RTPATH}" \ --stdout "${RTPATH}/var/service.log" \ --stderr "${RTPATH}/var/service.log" \ --env "PATH=$PATH" --env "FCGI_SOCKET_PATH=${FCGI_SOCKET_PATH}" \ --wait 1500 local retval=$? if [ "${retval}" != "0" ]; then eerror "${RC_SVCNAME} failed to start. The reason may be in:" eerror " ${RTPATH}/var/service.log" eend ${retval} return ${retval} fi # make sure lighttpd can use the socket for i in {0..10}; do [ -a "${FCGI_SOCKET_PATH}" ] && break sleep 1 done if [ -S "${FCGI_SOCKET_PATH}" ]; then chmod g+rwx "${FCGI_SOCKET_PATH}" eend 0 else eerror "Not a socket when it should be:" eerror " ${FCGI_SOCKET_PATH}" eend 1 fi } stop() { ebegin "${RC_SVCNAME} stopping" start-stop-daemon --stop --pidfile "${PIDFILE}" eend $? }