[coreboot-gerrit] Patch set updated for coreboot: lint: Add junit.xml output for jenkins

Martin Roth (martinroth@google.com) gerrit at coreboot.org
Thu Oct 15 18:09:50 CEST 2015


Martin Roth (martinroth at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/11891

-gerrit

commit 0159a39b96f37da894d841c1bab37092819e5df4
Author: Martin Roth <martinroth at google.com>
Date:   Tue Oct 13 15:04:17 2015 -0600

    lint: Add junit.xml output for jenkins
    
    To add lint to jenkins testing, we need junit.xml output.  This adds an
    optional --junit command line parameter to enable output to an xml file
    in the lint directory.
    
    Change-Id: I5588190cb050b9dbe99458cb18a71a147769f50e
    Signed-off-by: Martin Roth <martinroth at google.com>
---
 util/lint/lint | 21 ++++++++++++++++++++-
 1 file changed, 20 insertions(+), 1 deletion(-)

diff --git a/util/lint/lint b/util/lint/lint
index ea8b0e6..917c01a 100755
--- a/util/lint/lint
+++ b/util/lint/lint
@@ -18,7 +18,13 @@
 #set -x # uncomment for debug
 
 usage () {
-	printf "Usage: %s <lint|lint-stable>\n" "$0"
+	printf "Usage: %s <lint|lint-stable> [--junit]\n" "$0"
+}
+
+junit_write () {
+	if [ "$JUNIT" == "1" ]; then
+		echo "$1" >> "$XMLFILE"
+	fi
 }
 
 if [ -z "$1" ] || [ "$1" != "lint" ] && [ "$1" != "lint-stable" ]; then
@@ -27,25 +33,38 @@ if [ -z "$1" ] || [ "$1" != "lint" ] && [ "$1" != "lint-stable" ]; then
 fi
 
 LINTLOG=`mktemp .tmpconfig.lintXXXXX`;
+XMLFILE="$(dirname $0)/junit.xml"
 FAILED=0;
 
+if [ "$2" == "--junit" ]; then
+	JUNIT=1
+	echo '<?xml version="1.0" encoding="utf-8"?>' > "$XMLFILE"
+	junit_write '<testsuite>'
+fi
+
 for script in util/lint/${1}-*; do
 	echo
 	echo "$(basename $script)"
 	grep "^# DESCR:" $script | sed "s,.*DESCR: *,,"
 	echo "========"
+	junit_write "	<testcase classname='lint' name='$(basename $script)'>"
 	$script > $LINTLOG
 	if [ `cat $LINTLOG | wc -l` -eq 0 ]; then
 		echo "success"
 	else
 		echo "test failed:"
 		cat $LINTLOG
+		junit_write '		<failure type='testFailed'><![CDATA['
+		junit_write "$(cat $LINTLOG)"
+		junit_write "]]></failure>"
 		rm -f $LINTLOG
 		FAILED=$(( $FAILED + 1 ))
 	fi
 	echo "========"
+	junit_write '	</testcase>'
 done
 
 test $FAILED -eq 0 || { echo "ERROR: $FAILED test(s) failed."; rm -f $LINTLOG && exit 1; };
 rm -f $LINTLOG
+junit_write "</testsuite>"
 



More information about the coreboot-gerrit mailing list