diff --git a/contrib/teamcity/ibd.sh b/contrib/teamcity/ibd.sh --- a/contrib/teamcity/ibd.sh +++ b/contrib/teamcity/ibd.sh @@ -1,9 +1,11 @@ #!/bin/bash +set -euo pipefail + ### # Initial Block Download script. # -# Runs a bitcoindd process until initial block download is complete. +# Runs a bitcoind process until initial block download is complete. # Forwards the exit code from bitcoind onward. # @@ -16,8 +18,7 @@ cleanup() { echo "Terminating (pid: ${1})" - kill $1 - pkill -P ${MYPID} tail + pkill -P ${MYPID} tail || true } # Launch bitcoind @@ -28,6 +29,7 @@ # Wait for IBD to finish and kill the daemon ( + set +o pipefail tail -f ibd/debug.log | grep -m 1 'progress=1.000000' echo "Initial block download complete, killing bitcoin daemon." kill ${bitcoin_pid} @@ -38,3 +40,4 @@ # Wait for bitcoind to exit wait ${bitcoin_pid} +exit $?