Asciidoc-Tags aus Vorlage reingefummelt
[demos/kafka/training] / README.sh
1 #!/bin/bash
2
3 IMAGE=juplo/sumup-adder:1.0-SNAPSHOT
4
5 if [ "$1" = "cleanup" ]
6 then
7   docker-compose down -v
8   mvn clean
9   exit
10 fi
11
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
15
16 if [[
17   $(docker image ls -q $IMAGE) == "" ||
18   "$1" = "build"
19 ]]
20 then
21   docker-compose rm -svf adder-1 adder-2
22   mvn clean install || exit
23 else
24   echo "Using image existing images:"
25   docker image ls $IMAGE
26 fi
27
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 adder-1 adder-2
32
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
36 while ! [[ $(http 0:8091/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-1..."; sleep 1; done
37 while ! [[ $(http 0:8092/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-2..."; sleep 1; done
38
39 # tag::nachrichten[]
40 echo 6 | http -v :8080/peter
41 echo 6 | http -v :8080/klaus
42 # end::nachrichten[]
43
44 docker-compose up -d peter klaus
45
46 while [[ "$(http :8091/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-1..."; sleep 1; done
47 http -v --pretty none -S :8091/results
48 echo
49 while [[ "$(http :8092/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-2..."; sleep 1; done
50 http -v --pretty none -S :8092/results
51 echo
52 sleep 3
53 echo "Resultate für adder-1"
54 # tag::resultate[]
55 http -v --pretty none -S :8091/results
56 # end::resultate[]
57 echo
58 echo "Resultate für peter von adder-1"
59 http :8091/results/peter | jq .[].sum | uniq
60 echo "Resultate für klaus von adder-1"
61 http :8091/results/klaus | jq .[].sum | uniq
62 echo "Resultate für adder-2"
63 # tag::resultate[]
64 http -v --pretty none -S :8092/results
65 # end::resultate[]
66 echo
67 echo "Resultate für peter von adder-2"
68 http :8092/results/peter | jq .[].sum | uniq
69 echo "Resultate für klaus von adder-2"
70 http :8092/results/klaus | jq .[].sum | uniq
71
72 docker-compose stop adder-1
73 sleep 1
74 echo "Resultate für adder-2"
75 http -v --pretty none -S :8092/results
76 echo
77 echo "Resultate für peter von adder-2"
78 http :8092/results/peter | jq .[].sum | uniq
79 echo "Resultate für klaus von adder-2"
80 http :8092/results/klaus | jq .[].sum | uniq
81
82 docker-compose stop adder-2
83 docker-compose start adder-1
84 while ! [[ $(http 0:8091/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-1..."; sleep 1; done
85 while [[ "$(http :8091/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-1..."; sleep 1; done
86 echo "Resultate für adder-1"
87 http -v --pretty none -S :8091/results
88 echo
89 echo "Resultate für peter von adder-1"
90 http :8091/results/peter | jq .[].sum | uniq
91 echo "Resultate für klaus von adder-1"
92 http :8091/results/klaus | jq .[].sum | uniq
93
94 docker-compose start adder-2
95 while ! [[ $(http 0:8092/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-2..."; sleep 1; done
96 while [[ "$(http :8092/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-2..."; sleep 1; done
97 echo "Resultate für adder-1"
98 http -v --pretty none -S :8091/results
99 echo
100 echo "Resultate für adder-2"
101 http -v --pretty none -S :8092/results
102 echo
103 echo "Resultate für peter von adder-1"
104 http :8091/results/peter | jq .[].sum | uniq
105 echo "Resultate für klaus von adder-1"
106 http :8091/results/klaus | jq .[].sum | uniq
107 echo "Resultate für peter von adder-2"
108 http :8092/results/peter | jq .[].sum | uniq
109 echo "Resultate für klaus von adder-2"
110 http :8092/results/klaus | jq .[].sum | uniq
111
112 docker-compose kill -s 9 adder-1
113
114 docker-compose start adder-1
115 while ! [[ $(http 0:8091/actuator/health 2> /dev/null) =~ "UP" ]]; do echo "Waiting for adder-1..."; sleep 1; done
116 while [[ "$(http :8091/results | jq -r .)" == "{}" ]]; do echo "Waiting for some results to show up on adder-1..."; sleep 1; done
117 docker-compose kill -s 9 peter klaus
118 echo "Resultate für peter von adder-1"
119 http :8091/results/peter | jq .[].sum | uniq
120 echo "Resultate für klaus von adder-1"
121 http :8091/results/klaus | jq .[].sum | uniq
122 echo "Resultate für peter von adder-2"
123 http :8092/results/peter | jq .[].sum | uniq
124 echo "Resultate für klaus von adder-2"
125 http :8092/results/klaus | jq .[].sum | uniq