diff options
author | Sébastien Fabbro <bicatali@gentoo.org> | 2010-06-22 19:11:22 +0100 |
---|---|---|
committer | Sébastien Fabbro <bicatali@gentoo.org> | 2010-06-22 19:11:22 +0100 |
commit | be3bfe418026f8ec531fefe18ca4c10cc5b6d140 (patch) | |
tree | 0186e22fbb29d0ec30893f1674f954ac4c05e466 /sys-cluster/condor/files | |
parent | remanifesting (diff) | |
download | sci-be3bfe418026f8ec531fefe18ca4c10cc5b6d140.tar.gz sci-be3bfe418026f8ec531fefe18ca4c10cc5b6d140.tar.bz2 sci-be3bfe418026f8ec531fefe18ca4c10cc5b6d140.zip |
condor: more initd fixes, now local config will reside in /var/lib
Diffstat (limited to 'sys-cluster/condor/files')
-rw-r--r-- | sys-cluster/condor/files/condor.initd | 37 |
1 files changed, 30 insertions, 7 deletions
diff --git a/sys-cluster/condor/files/condor.initd b/sys-cluster/condor/files/condor.initd index e653c9c01..cb50808aa 100644 --- a/sys-cluster/condor/files/condor.initd +++ b/sys-cluster/condor/files/condor.initd @@ -15,23 +15,46 @@ depend() { use logger } -start() { - ebegin "Starting condor" +setup_central_manager() { # delete current condor host, replace it with central manager - sed -i \ - -e '/CONDOR_HOST/d/' \ + sed -e '/CONDOR_HOST/d' \ -e "\$aCONDOR_HOST=${CONDOR_CENTRAL_MANAGER}" \ - ${CONDOR_CONFIG_LOCAL} + /etc/condor/condor_config.local > ${CONDOR_CONFIG_LOCAL} + chown ${CONDOR_USER}:${CONDOR_USER} ${CONDOR_CONFIG_LOCAL} +} + +# set up condor ccb if only private networking is available (assumes ifconfig) +setup_ccb() { + /sbin/ifconfig | grep "inet addr" | egrep -v "addr:127.|addr:192.|addr:172.|addr:10." > /dev/null + retval=$? + if [ ${retval} -ne 0 ]; then # all addresses are local + echo \ + "$(/sbin/ifconfig | grep "inet addr" | grep -v 127. | awk '{print $2}' | sed s/addr://)" \ + "$(hostname)" \ + "# Added for Condor CCB" \ + >> /etc/hosts + fi +} + +cleanup_ccb() { + sed -i '/# Added for Condor CCB/d' /etc/hosts +} - pid=$(start-stop-daemon --start --quiet --user ${CONDOR_USER} \ +start() { + ebegin "Starting condor" + setup_central_manager + setup_ccb + start-stop-daemon --start --quiet --user ${CONDOR_USER} \ --pidfile ${CONDOR_RUN}/condor.pid \ - --exec ${CONDOR_MASTER} -- ${CONDOR_OPTS}) + --exec ${CONDOR_MASTER} -- ${CONDOR_OPTS} retval=$? + [ $retval -eq 0 ] && touch /var/lock/subsys/condor eend ${retval} } stop() { ebegin "Stopping condor" + cleanup_ccb start-stop-daemon --stop --quiet \ --pidfile ${CONDOR_RUN}/condor.pid \ --exec ${CONDOR_MASTER} |