--- buildbot/files/buildmaster.initd 2015-08-09 22:34:51.000000000 +0200 +++ buildbot/files/buildmaster.initd 2016-01-02 20:59:30.948408112 +0100 @@ -1,14 +1,21 @@ #!/sbin/runscript -# Copyright 1999-2013 Gentoo Foundation +# Copyright 1999-2016 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 extra_started_commands="reload" +BUILDMASTER_NAME=${RC_SVCNAME:12} +BUILDMASTER_PATH="${BASEDIR}/${BUILDMASTER_NAME}" + depend() { need net } checkconfig() { + if [ -z "${BUILDMASTER_NAME}" ]; then + eerror "Buildmaster name not defined. Please link buildmaster.foo to this file to start the buildmaster with the name \"foo\"." + return 1 + fi if [ -z "${BASEDIR}" ]; then eerror "BASEDIR not set" return 1 @@ -17,38 +24,38 @@ eerror "USERNAME not set" return 1 fi - if [ ! -d "${BASEDIR}" ]; then - eerror "${BASEDIR} is not a directory" + if [ ! -d "${BUILDMASTER_PATH}" ]; then + eerror "${BUILDMASTER_PATH} is not a directory" return 1 fi - if [ ! -e "${BASEDIR}/buildbot.tac" ]; then - eerror "${BASEDIR} does not contain buildbot.tac" + if [ ! -e "${BUILDMASTER_PATH}/buildbot.tac" ]; then + eerror "${BUILDMASTER_PATH} does not contain buildbot.tac" return 1 fi } start() { checkconfig || return 1 - ebegin "Starting buildmaster in ${BASEDIR}" + ebegin "Starting buildmaster in ${BUILDMASTER_PATH}" start-stop-daemon --start -u "${USERNAME}" \ - --pidfile "${BASEDIR}/buildmaster.pid" \ + --pidfile "${BUILDMASTER_PATH}/buildmaster.pid" \ --exec /usr/bin/python -- /usr/bin/twistd \ --no_save \ - --logfile="${BASEDIR}/twistd.log" \ - --pidfile="${BASEDIR}/buildmaster.pid" \ - --python="${BASEDIR}/buildbot.tac" + --logfile="${BUILDMASTER_PATH}/twistd.log" \ + --pidfile="${BUILDMASTER_PATH}/buildmaster.pid" \ + --python="${BUILDMASTER_PATH}/buildbot.tac" eend $? } stop() { - ebegin "Stopping buildmaster in ${BASEDIR}" - start-stop-daemon --stop --pidfile "${BASEDIR}/buildmaster.pid" + ebegin "Stopping buildmaster in ${BUILDMASTER_PATH}" + start-stop-daemon --stop --pidfile "${BUILDMASTER_PATH}/buildmaster.pid" eend $? } reload() { - ebegin "Reconfiguring buildmaster in ${BASEDIR}" + ebegin "Reconfiguring buildmaster in ${BUILDMASTER_PATH}" start-stop-daemon --signal HUP --pidfile \ - "${BASEDIR}"/buildmaster.pid + "${BUILDMASTER_PATH}"/buildmaster.pid eend $? }