X-Git-Url: https://juplo.de/gitweb/?p=demos%2Fkafka%2Fdeduplication;a=blobdiff_plain;f=README.sh;h=b71031cc4c7f121954164374f2401200b6238a48;hp=6646d2484f5eb5cea7cc5425c4f5cc4efb36264e;hb=150907d53cc99a98f4c888eacff892380ffd0feb;hpb=5bb3d2908ccfe091084aa8a0a8b1282fb19fb3e1 diff --git a/README.sh b/README.sh index 6646d24..b71031c 100755 --- a/README.sh +++ b/README.sh @@ -4,31 +4,52 @@ if [ "$1" = "cleanup" ] then docker-compose down mvn clean + rm *.txt exit fi -mvn package - -docker build -t juplo/deduplicator:streams . +if [[ $(docker image ls -q juplo/deduplicator:streams) == "" || "$1" = "build" ]] +then + mvn package || exit + docker build -t juplo/deduplicator:streams . || exit +else + echo "Using image existing image:" + docker image ls juplo/deduplicator:streams +fi docker-compose up -d zookeeper kafka -while ! [[ $(zookeeper-shell zookeeper:2181 ls /brokers/ids 2> /dev/null) =~ 1001 ]]; do echo "Waiting for kafka..."; sleep 1; done +if [ ! -e data.txt ]; +then + echo ./create-data.sh +fi + +while ! [[ $(zookeeper-shell zookeeper:2181 ls /brokers/ids 2> /dev/null) =~ 1001 ]]; +do + echo "Waiting for kafka..."; + sleep 1; +done kafka-topics --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 3 --topic input kafka-topics --create --zookeeper zookeeper:2181 --replication-factor 1 --partitions 3 --topic output docker-compose up -d deduplicator + +while ! [[ $(http :8080/actuator/health 2>/dev/null | jq -r .components.streams.status) == "RUNNING" ]]; +do + echo "Waiting for Streams-Application..."; + sleep 1; +done + cat data.txt | kafkacat -K: -b localhost:9092 -t input -sleep 5 kafkacat -C -b localhost:9092 -t input -e | wc -l kafkacat -C -b localhost:9092 -t output -e | wc -l -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^0 > result_0.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^1 > result_1.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^2 > result_2.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^3 > result_3.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^4 > result_4.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^5 > result_5.txt -kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | grep ^6 > result_6.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^peter/ { print $2 }' > result_peter.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^franz/ { print $2 }' > result_franz.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^ute/ { print $2 }' > result_ute.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^klaus/ { print $2 }' > result_klaus.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^paul/ { print $2 }' > result_paul.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^petra/ { print $2 }' > result_petra.txt +kafkacat -C -b localhost:9092 -t output -e -f'%k:%s\n' | awk -F: '/^siggi/ { print $2 }' > result_siggi.txt