summaryrefslogtreecommitdiffstats
path: root/conf
diff options
context:
space:
mode:
authorTodd Zullinger <tmz@pobox.com>2009-08-06 12:36:20 -0400
committerJames Turnbull <james@lovedthanlost.net>2009-08-13 08:21:28 +1000
commitb62d9668e04f40f2e3aa6c0f26dd26d1f75d8e22 (patch)
tree52e121a1d8c28717bd9f662537df07ece243b6fc /conf
parente9fbd4c9a21f1030f8fef1cd561fc3951399ad31 (diff)
downloadpuppet-b62d9668e04f40f2e3aa6c0f26dd26d1f75d8e22.tar.gz
puppet-b62d9668e04f40f2e3aa6c0f26dd26d1f75d8e22.tar.xz
puppet-b62d9668e04f40f2e3aa6c0f26dd26d1f75d8e22.zip
conf/redhat/*.init: Fix condrestart/try-restart
Previously, the Red Hat init scripts used the $pidfile or $lockfile as a test for whether to restart the daemons. This caused condrestart to start the daemons even when they were not running, in cases where they had died or been killed without cleaning up the $pidfile/$lockfile. This was reported by Ingvar Hagelund in Red Hat bug #480600. Signed-off-by: Todd Zullinger <tmz@pobox.com>
Diffstat (limited to 'conf')
-rw-r--r--conf/redhat/client.init7
-rw-r--r--conf/redhat/server.init11
2 files changed, 14 insertions, 4 deletions
diff --git a/conf/redhat/client.init b/conf/redhat/client.init
index bccb45cb1..401151c83 100644
--- a/conf/redhat/client.init
+++ b/conf/redhat/client.init
@@ -67,6 +67,10 @@ rh_status() {
status $statusopts $puppetd
}
+rh_status_q() {
+ rh_status >/dev/null 2>&1
+}
+
genconfig() {
echo -n $"Generate configuration puppet: "
$puppetd ${PUPPET_OPTS} ${PUPPET_EXTRA_OPTS} --genconfig
@@ -86,7 +90,8 @@ case "$1" in
reload
;;
condrestart|try-restart)
- [ -f "$pidfile" ] && restart
+ rh_status_q || exit 0
+ restart
;;
status)
rh_status
diff --git a/conf/redhat/server.init b/conf/redhat/server.init
index 8f05387cc..4bc44b9fb 100644
--- a/conf/redhat/server.init
+++ b/conf/redhat/server.init
@@ -89,7 +89,7 @@ genconfig() {
$PUPPETMASTER $PUPPETMASTER_OPTS --genconfig
}
-puppetmaster_status() {
+rh_status() {
if [ -n "$PUPPETMASTER_PORTS" ] && [ ${#PUPPETMASTER_PORTS[@]} -gt 1 ]; then
for ((i=0; i<${#PUPPETMASTER_PORTS[@]}; i++)); do
echo -en "Port ${PUPPETMASTER_PORTS[$i]}: "
@@ -103,6 +103,10 @@ puppetmaster_status() {
return $RETVAL
}
+rh_status_q() {
+ rh_status >/dev/null 2>&1
+}
+
case "$1" in
start)
start
@@ -114,10 +118,11 @@ case "$1" in
restart
;;
condrestart)
- [ -f "$lockfile" ] && restart
+ rh_status_q || exit 0
+ restart
;;
status)
- puppetmaster_status
+ rh_status
;;
genconfig)
genconfig