#!/bin/sh set -ex # Launch and wait for toxiproxy ${REPOSITORY_ROOT}/vagrant/run_toxiproxy.sh & while ! nc -q 1 localhost 2181 </dev/null; do echo "Waiting"; sleep 1; done while ! nc -q 1 localhost 9092 </dev/null; do echo "Waiting"; sleep 1; done # Launch and wait for Zookeeper for i in 1 2 3 4 5; do KAFKA_PORT=`expr $i + 9090` cd ${KAFKA_INSTALL_ROOT}/kafka-${KAFKA_PORT} && bin/zookeeper-server-start.sh -daemon config/zookeeper.properties done while ! nc -q 1 localhost 21805 </dev/null; do echo "Waiting"; sleep 1; done # Launch and wait for Kafka for i in 1 2 3 4 5; do KAFKA_PORT=`expr $i + 9090` cd ${KAFKA_INSTALL_ROOT}/kafka-${KAFKA_PORT} && bash bin/kafka-server-start.sh -daemon config/server.properties done ps auxww | grep -i kafka N=10 RC=1 set +x printf "Waiting for Kafka to become available." for _ in $(seq 1 "$N"); do if nc -z 127.0.0.1 29095 </dev/null; then RC=0 break fi printf "." sleep 1 done printf "\n" if [ "$RC" -gt 0 ]; then echo 'Error: Kafka failed to startup' >&2 find "${KAFKA_INSTALL_ROOT}" -name "server.log" -print0 | xargs tail -256 exit ${RC} fi