exit
fi
+docker-compose -f docker/docker-compose.yml up -d --remove-orphans kafka-1 kafka-2 kafka-3
+
docker-compose -f docker/docker-compose.yml up --remove-orphans setup || exit 1
-docker-compose -f docker/docker-compose.yml ps
-docker-compose -f docker/docker-compose.yml up -t0 -d cli
-sleep 1
-docker-compose -f docker/docker-compose.yml logs setup
+docker-compose -f docker/docker-compose.yml up -d acks-0 acks-1 acks-all
+while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-0..."; sleep 1; done
+while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-1..."; sleep 1; done
+while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-all..."; sleep 1; done
+echo "Resetting the topic"
+docker-compose -f docker/docker-compose.yml restart setup
+
+docker-compose -f docker/docker-compose.yml exec -T cli bash << 'EOF'
+# tag::describe[]
+kafka-topics --bootstrap-server kafka:9092 --describe --topic test
+# end::describe[]
+EOF
+
+# tag::foo[]
+echo -n Alle Broker laufen über acks-0 | http -v :8080/foo
+echo -n Alle Broker laufen über acks-1 | http -v :8081/foo
+echo -n Alle Broker laufen über acks-all | http -v :8082/foo
+# end::foo[]
echo
-echo "Hilfe-Ausgabe von kafkacat"
-echo
-docker-compose -f docker/docker-compose.yml exec -T cli kafkacat -h
+echo "Reading all messages, that were really written:"
+# tag::foo[]
+kafkacat -b :9092 -t test -o 0 -f'key: %k\toffset: %o\tvalue: %s\n' -qe
+# end::foo[]
+
+echo "Stopping kafka-1"
+docker-compose -f docker/docker-compose.yml stop kafka-1
+docker-compose -f docker/docker-compose.yml exec cli kafka-topics --bootstrap-server kafka:9092 --describe --topic test
echo
-echo "Nachrichten schreiben mit kafkacat"
+echo "Restarting acks-0 acks-1 acks-all"
+docker-compose -f docker/docker-compose.yml restart acks-0 acks-1 acks-all
+while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-0..."; sleep 1; done
+while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-1..."; sleep 1; done
+while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-all..."; sleep 1; done
+
+echo -n kafka-1 wurde beendet über acks-0 | http -v :8080/foo
+echo -n kafka-1 wurde beendet über acks-1 | http -v :8081/foo
+echo -n kafka-1 wurde beendet über acks-all | http -v :8082/foo
echo
-docker-compose -f docker/docker-compose.yml exec -T cli kafkacat -P -b kafka:9092 -t test << EOF
-Hallo Welt!
-Nachricht #1
-Nachricht #2
-Nachricht #3
-EOF
+echo "Reading all messages, that were really written:"
+kafkacat -b :9092 -t test -o 0 -f'key: %k\toffset: %o\tvalue: %s\n' -qe
+
+echo "Stopping kafka-3"
+docker-compose -f docker/docker-compose.yml stop kafka-3
+docker-compose -f docker/docker-compose.yml exec cli kafka-topics --bootstrap-server kafka:9092 --describe --topic test
echo
-echo "Nachrichten lesen mit kafkacat"
+echo "Restarting acks-0 acks-1 acks-all"
+docker-compose -f docker/docker-compose.yml restart acks-0 acks-1 acks-all
+while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-0..."; sleep 1; done
+while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-1..."; sleep 1; done
+while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for acks-all..."; sleep 1; done
+
+echo -n kafka-1 und kafka-3 wurden beendet über acks-0 | http -v :8080/foo
+echo -n kafka-1 und kafka-3 wurden beendet über acks-1 | http -v :8081/foo
+echo -n kafka-1 und kafka-3 wurden beendet über acks-all | http -v :8082/foo
echo
-docker-compose -f docker/docker-compose.yml exec cli kafkacat -C -b kafka:9092 -t test -o beginning -e
+echo "Reading all messages, that were really written:"
+kafkacat -b :9092 -t test -o 0 -f'key: %k\toffset: %o\tvalue: %s\n' -qe