Buildifier: Implement format check for build files
Change-Id: I0e5bc60141a53bb17d314ede094162303162ad27
diff --git a/jenkins/gerrit-verifier.yaml b/jenkins/gerrit-verifier.yaml
index 3c5e34a..5d294c7 100644
--- a/jenkins/gerrit-verifier.yaml
+++ b/jenkins/gerrit-verifier.yaml
@@ -171,6 +171,24 @@
bazel test //polygerrit-ui/app:lint_test --test_output errors
bazel test //polygerrit-ui/app:polylint_test --test_output errors
fi
+ - shell: |
+ #!/bin/bash -e
+ cd gerrit
+ EXITCODE=0
+ for buildfile in $((git show --diff-filter=AM --name-only --pretty="" HEAD | grep --regex "WORKSPACE\|BUILD") || true)
+ do
+ BUILDIFIER_OUTPUT_FILE="$(mktemp)_buildifier_output.log"
+ buildifier -showlog -v -mode=check $buildfile 2>&1 | tee ${BUILDIFIER_OUTPUT_FILE}
+ if [[ -s ${BUILDIFIER_OUTPUT_FILE} ]]; then
+ echo "Need Formatting:"
+ echo "[$buildfile]"
+ echo "Please fix manually or run buildifier $buildfile to auto-fix."
+ buildifier -showlog -v -mode=diff $buildfile
+ rm -rf ${BUILDIFIER_OUTPUT_FILE}
+ EXITCODE=1
+ fi
+ done
+ exit $EXITCODE
- job:
name: 'Gerrit-verifier-change'