diff options
author | Josh Haberman <jhaberman@gmail.com> | 2016-02-23 14:28:02 -0800 |
---|---|---|
committer | Josh Haberman <jhaberman@gmail.com> | 2016-03-02 14:51:09 -0800 |
commit | 38bc15552de259fa99c8e9654bed0ff8433902eb (patch) | |
tree | 7c521a2945fcf6abedc8d3c424f1ec8685732e09 /tools/run_tests/jenkins.sh | |
parent | ffc811804f4067c39f53d89fcbcaff1680d8e1fd (diff) | |
download | protobuf-38bc15552de259fa99c8e9654bed0ff8433902eb.tar.gz protobuf-38bc15552de259fa99c8e9654bed0ff8433902eb.tar.bz2 protobuf-38bc15552de259fa99c8e9654bed0ff8433902eb.zip |
Added code to generate XML output file for more granular results.
Diffstat (limited to 'tools/run_tests/jenkins.sh')
-rwxr-xr-x | tools/run_tests/jenkins.sh | 36 |
1 files changed, 30 insertions, 6 deletions
diff --git a/tools/run_tests/jenkins.sh b/tools/run_tests/jenkins.sh index 620c2116..32050d25 100755 --- a/tools/run_tests/jenkins.sh +++ b/tools/run_tests/jenkins.sh @@ -1,5 +1,6 @@ #!/bin/bash +WORKSPACE_BASE=`pwd` MY_DIR="$(dirname "$0")" TEST_SCRIPT=$MY_DIR/tests.sh BUILD_DIR=/tmp/protobuf @@ -17,16 +18,30 @@ git clone /var/local/jenkins/protobuf cd protobuf OUTPUT_DIR=`mktemp -d` -mkdir -p $OUTPUT_DIR/1 +LOG_OUTPUT_DIR=$OUTPUT_DIR/logs +mkdir -p $LOG_OUTPUT_DIR/1/cpp +################################################################################ # cpp build needs to run first, non-parallelized, so that protoc is available # for other builds. -$TEST_SCRIPT cpp | tee $OUTPUT_DIR/1/cpp + +# Output filenames to follow the overall scheme used by parallel, ie: +# $DIR/logs/1/cpp/stdout +# $DIR/logs/1/cpp/stderr +# $DIR/logs/1/csharp/stdout +# $DIR/logs/1/csharp/stderr +# $DIR/logs/1/java_jdk7/stdout +# $DIR/logs/1/java_jdk7/stderr +CPP_STDOUT=$LOG_OUTPUT_DIR/1/cpp/stdout +CPP_STDERR=$LOG_OUTPUT_DIR/1/cpp/stderr +$TEST_SCRIPT cpp > >(tee $CPP_STDOUT) 2> >(tee $CPP_STDERR >&2) # Other tests are run in parallel. The overall run fails if any one of them # fails. -parallel --results $OUTPUT_DIR $TEST_SCRIPT ::: \ +FAILED=false + +parallel --results $LOG_OUTPUT_DIR --joblog $OUTPUT_DIR/joblog $TEST_SCRIPT ::: \ csharp \ java_jdk7 \ javanano_jdk7 \ @@ -34,8 +49,17 @@ parallel --results $OUTPUT_DIR $TEST_SCRIPT ::: \ javanano_oracle7 \ python \ python_cpp \ - ruby21 + ruby21 \ + || true # Process test results even if tests fail. -# java_jdk6 \ +# The directory that is copied from Docker back into the Jenkins workspace. +COPY_FROM_DOCKER=/var/local/git/protobuf/testoutput +mkdir -p $COPY_FROM_DOCKER +TESTOUTPUT_XML_FILE=$COPY_FROM_DOCKER/testresults.xml -find $OUTPUT_DIR +python $MY_DIR/../jenkins/make_test_output.py $OUTPUT_DIR > $TESTOUTPUT_XML_FILE + +ls -l $TESTOUTPUT_XML_FILE + +### disabled tests +# java_jdk6 \ |