github.com/unigraph-dev/dgraph@v1.1.1-0.20200923154953-8b52b426f765/contrib/embargo/run.sh (about) 1 #!/bin/bash 2 # Builds ./embargo and runs the embargo tests. 3 # 4 # Usage: 5 # Run the test 32 times (about 8 hours): 6 # ./run.sh 7 # Run the test once: 8 # ./run.sh 1 9 10 function cleanup_embargo { 11 embargo destroy || true 12 docker container prune -f 13 if docker network ls | grep -q 'embargo_net'; then 14 docker network ls | 15 awk '/embargo_net/ { print $1 }' | 16 xargs docker network rm 17 fi 18 } 19 20 21 set -x -o pipefail 22 23 times=${1:-32} 24 25 go build -v . 26 27 cleanup_embargo 28 # Each run takes about 15 minutes, so running 32 times will take about 8 hours. 29 for i in $(seq 1 $times) 30 do 31 echo "===> Running Embargo #$i" 32 if ! ./embargo 2>&1 | tee embargo$i.log; then 33 echo "===> Embargo test failed" 34 docker logs zero1 2>&1 | tee zero1.log 35 docker logs zero2 2>&1 | tee zero2.log 36 docker logs zero3 2>&1 | tee zero3.log 37 docker logs dg1 2>&1 | tee dg1.log 38 docker logs dg2 2>&1 | tee dg2.log 39 docker logs dg3 2>&1 | tee dg3.log 40 41 cleanup_embargo 42 exit 1 43 fi 44 done 45 46 echo "Embargo log summary:" 47 grep '===>' embargo*.log 48 49 cleanup_embargo