3 IMAGE=juplo/sumup-adder-json:1.0-SNAPSHOT
5 if [ "$1" = "cleanup" ]
12 docker-compose rm -svf adder-1 adder-2
13 docker-compose rm -svf mongo
14 docker-compose up -d zookeeper kafka-1 kafka-2 kafka-3 cli mongo express
17 $(docker image ls -q $IMAGE) == "" ||
21 docker-compose rm -svf adder-1 adder-2
22 mvn -D skipTests clean install || exit
24 echo "Using image existing images:"
25 docker image ls $IMAGE
28 echo "Waiting for the Kafka-Cluster to become ready..."
29 docker-compose exec cli cub kafka-ready -b kafka:9092 1 60 > /dev/null 2>&1 || exit 1
30 docker-compose up setup
31 docker-compose up -d gateway requests-1 requests-2
33 while ! [[ $(http 0:8080/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for gateway..."; sleep 1; done
34 while ! [[ $(http 0:8081/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for requests-1..."; sleep 1; done
35 while ! [[ $(http 0:8082/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for requests-2..."; sleep 1; done
37 docker-compose up -d adder-1 adder-2
39 while ! [[ $(http 0:8091/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-1..."; sleep 1; done
40 while ! [[ $(http 0:8092/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-2..."; sleep 1; done
43 echo 5 | http -v :8080/peter
44 echo 5 | http -v :8080/klaus
47 while [[ "$(http :8091/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-1..."; sleep 1; done
48 echo "Resultate für adder-1"
53 while [[ "$(http :8092/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-2..."; sleep 1; done
54 echo "Resultate für adder-2"
59 echo "Writing poison pill into topic out..."
61 echo 'BOOM!' | kafkacat -P -b :9092 -t out
65 docker-compose ps adder-1 adder-2