Updating checkstyle test for Buck
- Updating grep regex which fails on Linux
- Printing output for failed checkstyle runs
Change-Id: I905fe4b43a8c3948bca02d8bc73e88174735ac0b
diff --git a/bucklets/onos.bucklet b/bucklets/onos.bucklet
index 61f43b8..9c1ae9f 100644
--- a/bucklets/onos.bucklet
+++ b/bucklets/onos.bucklet
@@ -112,12 +112,17 @@
if srcs:
chk_cmd = '#!/bin/bash\n'
base = get_base_path()
+ chk_cmd += 'OUT=$3\n'
chk_cmd += ' '.join(( 'java -jar $1',
- '-c $2',
- ' '.join(['%s/%s' % (base, s) for s in srcs]) ))
- chk_cmd += ' | grep -E "^[^: ]*:\d+:\d+: error:"'
+ '-c $2',
+ ' '.join(['%s/%s' % (base, s) for s in srcs]) ))
+ chk_cmd += ' | tee $OUT'
+ chk_cmd += ' | grep -E "^.*[0-9]+:[0-9]+: error:"'
chk_cmd += ' | sed "s#^.*%s/#%s:#g"\n' % (base, name)
- chk_cmd += 'test ${PIPESTATUS[0]} -eq 0\n' # status of java command
+ chk_cmd += 'RESULT=(${PIPESTATUS[*]})\n' # RESULT[0] is checkstyle result, RESULT[2] is grep
+ chk_cmd += 'test ${RESULT[2]} -eq 0 || cat $OUT\n'
+ chk_cmd += 'rm $OUT\n'
+ chk_cmd += 'exit ${RESULT[0]}'
genrule(
name = name + '-checkstyle-sh',
@@ -131,7 +136,8 @@
test = ':' + name + '-checkstyle-sh',
args = [
'$(location //lib:checkstyle)',
- '$(location //tools/build/conf:checkstyle-xml)'
+ '$(location //tools/build/conf:checkstyle-xml)',
+ '`mktemp /tmp/%s-checkstyle-XXXXXX`' % name,
],
deps = [
':'+ bare_jar_name,