From dc3687b18b186273f1a15526a0f9c86406644fc4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Andr=C3=A9?= Date: Thu, 15 Jan 2015 11:58:42 +0900 Subject: [PATCH] Various fixes to pre-commit hook Fix incorrect test in sh. Bash implements the new test with [[ that accepts the double equal, however, this is not a bash script. On Debian and derivates, this will be run by dash. Make the script portable by not using GNU extensions of xargs. Call `validate-all-*.sh` scripts whenever possible. Have bashate look for /usr/bin/env style shebang as well. Remove useless validate-json.sh file. Change-Id: Id2d697f2e9ddaa66e25f71f410200528c1e0cf6b --- tools/pre-commit-hook | 19 ++++++------------- tools/validate-json.sh | 3 --- 2 files changed, 6 insertions(+), 16 deletions(-) delete mode 100755 tools/validate-json.sh diff --git a/tools/pre-commit-hook b/tools/pre-commit-hook index 475e059126..a136b97b46 100755 --- a/tools/pre-commit-hook +++ b/tools/pre-commit-hook @@ -5,7 +5,7 @@ RES=0 cd $TOPLEVEL -if [ "$1" == "--install" ]; then +if [ "$1" = "--install" ]; then ln -sf ../../tools/pre-commit-hook .git/hooks/pre-commit exit fi @@ -26,26 +26,19 @@ find . -type f echo "=== bashate checks ===" -find . -type f -print0 | - xargs -0 --no-run-if-empty egrep -lZ '^#!/bin/(ba)?sh' | - xargs -0 bashate || RES=1 +files=$(egrep -rlI '^#!/(bin/|usr/bin/env )(ba)?sh' .) +[ "$files" ] && (bashate $files || RES=1) echo "=== yaml checks ===" -find . -name '*.yaml' -print0 | - xargs -0 --no-run-if-empty ${TOPLEVEL}/tools/validate-yaml.py \ - || RES = 1 +${TOPLEVEL}/tools/validate-all-yaml.sh || RES=1 echo "=== json checks ===" -find . -name '*.json' -print0 | - xargs -0 --no-run-if-empty ${TOPLEVEL}/tools/validate-json.py \ - || RES=1 +${TOPLEVEL}/tools/validate-all-json.sh || RES=1 echo "=== maintainer checks ===" -find . -name Dockerfile -print0 | - xargs -0 --no-run-if-empty ${TOPLEVEL}/tools/validate-maintainer \ - || RES=1 +${TOPLEVEL}/tools/validate-all-maintainer.sh || RES=1 exit $RES diff --git a/tools/validate-json.sh b/tools/validate-json.sh deleted file mode 100755 index 296ef781c6..0000000000 --- a/tools/validate-json.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh - -true