From 6749bb6ac0a41bcdfc8bdfa1141b01acd6154a73 Mon Sep 17 00:00:00 2001 From: Andrew Thompson Date: Thu, 7 Jul 2011 11:53:01 -0400 Subject: [PATCH] Propagate exit status from nodetool to runner script --- priv/templates/simplenode.runner | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/priv/templates/simplenode.runner b/priv/templates/simplenode.runner index 59e3973..87947a4 100755 --- a/priv/templates/simplenode.runner +++ b/priv/templates/simplenode.runner @@ -85,6 +85,10 @@ case "$1" in ;; esac $NODETOOL stop + ES=$? + if [ "$ES" -ne 0 ]; then + exit $ES + fi while `kill -0 $PID 2>/dev/null`; do sleep 1 @@ -94,28 +98,41 @@ case "$1" in restart) ## Restart the VM without exiting the process $NODETOOL restart + ES=$? + if [ "$ES" -ne 0 ]; then + exit $ES + fi ;; reboot) ## Restart the VM completely (uses heart to restart it) $NODETOOL reboot + ES=$? + if [ "$ES" -ne 0 ]; then + exit $ES + fi ;; ping) ## See if the VM is alive $NODETOOL ping + ES=$? + if [ "$ES" -ne 0 ]; then + exit $ES + fi ;; attach) # Make sure a node IS running RES=`$NODETOOL ping` - if [ "$RES" != "pong" ]; then + ES=$? + if [ "$ES" -ne 0 ]; then echo "Node is not running!" - exit 1 + exit $ES fi shift - $ERTS_PATH/to_erl $PIPE_DIR + exec $ERTS_PATH/to_erl $PIPE_DIR ;; console|console_clean)