coreboot-kgpe-d16/util/gitconfig/pre-commit
Alex Thiessen 6719862de8 util/gitconfig: Refuse to commit on lint failure
After running `lint-stable` in the pre-commit hook, its result is
ignored. This behavior was introduced in commit b18f522b
(lint/gitconfig: Enable checkpatch.pl checking of commits) and it
doesn't seem intentional. This issue was also mentioned in the revert
discussion (https://review.coreboot.org/c/coreboot/+/17440).

Enable `errexit` mode of the shell so that the hook fails when an error
occurs in any of the tests. Also, enable `nounset` mode to catch typos
easier.

Change-Id: I749963167660ea6a1a04d40a14ad1113e82f0f86
Signed-off-by: Alex Thiessen <alex.thiessen.de+coreboot@gmail.com>
Reviewed-on: https://review.coreboot.org/23130
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Nico Huber <nico.h@gmx.de>
2018-01-11 22:09:33 +00:00

28 lines
835 B
Bash
Executable file

#!/bin/sh
##
## This file is part of the coreboot project.
##
## Copyright (C) 2015 Patrick Georgi <patrick@georgi-clan.de>
##
## This program is free software; you can redistribute it and/or modify
## it under the terms of the GNU General Public License as published by
## the Free Software Foundation; version 2 of the License.
##
## This program is distributed in the hope that it will be useful,
## but WITHOUT ANY WARRANTY; without even the implied warranty of
## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
## GNU General Public License for more details.
##
set -e # -o errexit
set -u # -o nounset
%MAKE% lint-stable
PATCHDIFF=$(git diff --cached)
if printf "%s\n" "$PATCHDIFF" | grep -q "@@"; then
echo
echo "Running checkpatch"
printf "%s\n" "$PATCHDIFF" | util/lint/checkpatch.pl --no-signoff -q -
fi