SHUTDOWN_DELAY=0
SHUTDOWN_DELAY_INCREMENT=1
SHUTDOWN_DELAY_LIMIT=30
echo "Building Zebra"
echo
cargo build --bin zebrad || exit $?
EXIT_STATUS=0
while [ $EXIT_STATUS -eq 0 ] && [ $SHUTDOWN_DELAY -le $SHUTDOWN_DELAY_LIMIT ]; do
echo
echo "Running Zebra for $SHUTDOWN_DELAY seconds"
echo
trap "kill %?zebrad 2> /dev/null" EXIT
target/debug/zebrad start &
sleep $SHUTDOWN_DELAY
echo
echo "Killing Zebra after $SHUTDOWN_DELAY seconds"
echo
kill %?zebrad
wait %?zebrad
EXIT_STATUS=$?
if [ $EXIT_STATUS -eq 143 ]; then
EXIT_STATUS=0
fi
echo
echo "Killing Zebra after $SHUTDOWN_DELAY seconds exited with $EXIT_STATUS"
echo
SHUTDOWN_DELAY=$[SHUTDOWN_DELAY + SHUTDOWN_DELAY_INCREMENT]
done
exit $EXIT_STATUS