Hello Jenkins Builder, I'd like you to reexamine a change. Please visit
https://gerrit.osmocom.org/6483 to look at the new patch set (#2). ttcn3-tcpdump-stop.sh: Wait to receive last packets before stopping tcpdump There's a time delay between packets are sent through the system and tcpdump reads, buffers and stores them into the pcap file. We need to give it more time to process everything before killing it, otherwise last (or all) packets from the test are not captured. Change-Id: I240d8f1bdb2ca6ad353e60ef15937dc2bd4cbebd --- M ttcn3-tcpdump-stop.sh 1 file changed, 19 insertions(+), 0 deletions(-) git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/83/6483/2 diff --git a/ttcn3-tcpdump-stop.sh b/ttcn3-tcpdump-stop.sh index 575c0ef..a085bf7 100755 --- a/ttcn3-tcpdump-stop.sh +++ b/ttcn3-tcpdump-stop.sh @@ -1,6 +1,25 @@ #!/bin/sh PIDFILE=/tmp/tcpdump.pid +TESTCASE=$1 + +if [ "z$TTCN3_PCAP_PATH" = "z" ]; then + TTCN3_PCAP_PATH=/tmp +fi + +# Wait for up to 2 seconds if we keep receiving traffinc from tcpdump, +# otherwise we might lose last packets from test. +i=0 +prev_count=-1 +count=$(stat --format="%s" "$TTCN3_PCAP_PATH/$TESTCASE.pcap") +while [ $count -gt $prev_count ] && [ $i -lt 2 ] +do + echo "Waiting for tcpdump to finish... $i (prev_count=$prev_count, count=$count)" + sleep 1 + prev_count=$count + count=$(stat --format="%s" "$TTCN3_PCAP_PATH/$TESTCASE.pcap") + i=$((i+1)) +done if [ -e $PIDFILE ]; then # NOTE: This requires you to be root or something like -- To view, visit https://gerrit.osmocom.org/6483 To unsubscribe, visit https://gerrit.osmocom.org/settings Gerrit-MessageType: newpatchset Gerrit-Change-Id: I240d8f1bdb2ca6ad353e60ef15937dc2bd4cbebd Gerrit-PatchSet: 2 Gerrit-Project: osmo-ttcn3-hacks Gerrit-Branch: master Gerrit-Owner: Pau Espin Pedrol <pes...@sysmocom.de> Gerrit-Reviewer: Harald Welte <lafo...@gnumonks.org> Gerrit-Reviewer: Jenkins Builder