chiark / gitweb /
Don't accept pyflakes/pep8 not being installed, common err func
authorDaniel Martí <mvdan@mvdan.cc>
Sun, 9 Nov 2014 13:34:24 +0000 (14:34 +0100)
committerDaniel Martí <mvdan@mvdan.cc>
Sun, 9 Nov 2014 13:34:24 +0000 (14:34 +0100)
hooks/pre-commit

index 3e63ebdc212d560ac8ac1b0de394cd3972938685..9abcc0a2f34319ef3d4be2c1a808381dc1a66036 100755 (executable)
@@ -9,17 +9,23 @@ exec 1>&2
 PY_FILES="fdroid makebuildserver setup.py examples/*.py buildserver/*.py fdroidserver/*.py"
 SH_FILES="fd-commit jenkins-build docs/*.sh hooks/pre-commit"
 
+err() {
+       echo ERROR: "$@"
+       exit 1
+}
+
 cmd_exists() {
        command -v $1 1>/dev/null
 }
 
 # For systems that switched to python3, first check for the python2 versions
+
 if cmd_exists pyflakes-python2; then
        PYFLAKES=pyflakes-python2
 elif cmd_exists pyflakes; then
        PYFLAKES=pyflakes
 else
-       echo "pyflakes is not installed!"
+       err "pyflakes is not installed!"
 fi
 
 if cmd_exists pep8-python2; then
@@ -27,26 +33,24 @@ if cmd_exists pep8-python2; then
 elif cmd_exists pep8; then
        PEP8=pep8
 else
-       echo "pep8 is not installed!"
+       err "pep8 is not installed!"
 fi
 
 # If there are python errors or warnings, print them and fail.
-[ -n $PYFLAKES ] && $PYFLAKES $PY_FILES
-[ -n $PEP8 ] && $PEP8 --ignore=E123,E501 $PY_FILES
+$PYFLAKES $PY_FILES
+$PEP8 --ignore=E123,E501 $PY_FILES
 
 
 #------------------------------------------------------------------------------#
 # check the syntax of included shell scripts
 
-exitstatus=0
 # use bash to check that the syntax is correct
 for f in $SH_FILES; do
     if bash -n $f; then
         : # success! do nothing
     else
-        echo "FAILED!"
-        exitstatus=1
+        err "FAILED!"
     fi
 done
 
-exit $exitstatus
+exit 0