3 IMAGE=juplo/spring-consumer-json-kafkalistener:1.0-SNAPSHOT
5 if [ "$1" = "cleanup" ]
12 docker-compose up -d kafka-0 kafka-1 kafka-2 kafka-3 cli
15 $(docker image ls -q $IMAGE) == "" ||
19 docker-compose rm -svf consumer-1 consumer-2
20 mvn clean install || exit
22 echo "Using image existing images:"
23 docker image ls $IMAGE
27 docker-compose logs -f setup
29 while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for producer..."; sleep 1; done
30 while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for consumer-1..."; sleep 1; done
31 while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for consumer-2..."; sleep 1; done
34 echo 6 | http -v :8080/peter
35 echo 77 | http -v :8080/klaus
38 echo "Writing poison pill..."
40 echo 'BOOM!' | kafkacat -P -b :9092 -t test
43 echo "Writing logic error..."
45 echo 66 | http -v :8080/peter?error=1
48 echo 66 | http -v :8080/peter
49 echo 7 | http -v :8080/klaus
52 docker-compose stop consumer-1 consumer-2
53 docker-compose logs -f consumer-1 consumer-2
55 kafkacat -b :9092 -t test.DLT -e -f 'p=%p|o=%o|%k=%s|h=%h\n'