Improve continuous tests runner
authorMichal Sojka <sojkam1@fel.cvut.cz>
Fri, 17 Oct 2014 13:44:11 +0000 (15:44 +0200)
committerMichal Sojka <sojkam1@fel.cvut.cz>
Fri, 17 Oct 2014 13:44:18 +0000 (15:44 +0200)
- Do not run ifup scripts. They restart openssh server and if this
  happens too often, systemd marks it as failed.
- Output newly added out_of_range statistics
- Use bc to compare floating point "$avg" - otherwise, there is a
  warning. Also use herestring syntax (<<<) available in bash and zsh.

continuous/gw-setup/run.pl

index f31fd55..713f044 100755 (executable)
@@ -21,16 +21,17 @@ $exp->expect(120,
 # Measure latencies
 my $latester = '
 set -e
-rm -f tmp-stat.txt
 echo "Starting latester"
-sudo /sbin/ifdown eth0
+rm -f tmp-stat.txt
+sudo /sbin/ifdown --no-scripts eth0
 r=0
 sudo ~/bin/latester -d can0 -d can1 -d can2 -c 3200 -q --oneattime -n tmp || r=$?
-sudo /sbin/ifup eth0
+sudo /sbin/ifup --no-scripts eth0
 source tmp-stat.txt
-for i in sent lost enobufs $(seq -f percentile%g 0 10 100); do keyval="$keyval $i=$((i))"; done
+unset keyval
+for i in sent lost enobufs out_of_range_below out_of_range_above $(seq -f percentile%g 0 10 100); do keyval="$keyval $i=$((i))"; done
 echo "! PERF: gw_latency $avg ┬Ás $keyval ok"
-test $avg -eq 0 && exit 1
+if [ $(bc -l <<< "$avg == 0") -eq 1 ]; then exit 1; fi
 exit $r
 ';