2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
11 echo "./$0 build_number file_to_parse output_dir"
12 echo "this script will use the build output to generate *csv and *txt"
13 echo "for jenkins plugin plot https://github.com/jenkinsci/plot-plugin/"
25 echo "$file doesn't exist! exiting"
28 if [ ! -w $outputdir ]
31 echo "$outputdir isn't writeable! exiting"
35 #------------------------------
36 ## MAXLINE is the amount of lines that will read after the pattern
37 ## is match (the logfile could be hundred thousands lines long).
38 ## 1000 should be safe enough to capture all the output of the individual test
41 ## TODO: check $build and $file make sense
44 test_Create_and_show_large_collection_with_manifest_text_of_20000000 \
45 test_Create,_show,_and_update_description_for_large_collection_with_manifest_text_of_100000 \
46 test_Create_one_large_collection_of_20000000_and_one_small_collection_of_10000_and_combine_them
48 cleaned_test=$(echo $test | tr -d ",.:;/")
49 (zgrep -i -E -A$MAXLINES "^[A-Za-z0-9]+Test: $test" $file && echo "----") | tail -n +1 | tail --lines=+3|grep -B$MAXLINES -E "^-*$" -m1 > $outputdir/$cleaned_test-$build.txt
53 echo processing $outputdir/$cleaned_test-$build.txt creating $outputdir/$cleaned_test.csv
54 echo $(grep ^Completed $outputdir/$cleaned_test-$build.txt | perl -n -e '/^Completed (.*) in [0-9]+ms.*$/;print "".++$line."-$1,";' | perl -p -e 's/,$//g'|tr " " "_" ) > $outputdir/$cleaned_test.csv
55 echo $(grep ^Completed $outputdir/$cleaned_test-$build.txt | perl -n -e '/^Completed.*in ([0-9]+)ms.*$/;print "$1,";' | perl -p -e 's/,$//g' ) >> $outputdir/$cleaned_test.csv
57 echo "$test was't found on $file"
58 cleaned_test=$(echo $test | tr -d ",.:;/")
59 > $outputdir/$cleaned_test.csv