From 1e5a0dc7c5c0552695a2ff3fcbcbfdb713c8c68b Mon Sep 17 00:00:00 2001 From: Jeff Bradberry Date: Wed, 12 May 2021 11:54:17 -0400 Subject: [PATCH] Break out the pre-commit hook into an explicit script This means that - we don't have to be always updating the underlying .git/hooks/pre-commit file - updates to the logic will just work automatically - the logic of the black logic has been fixed so that AWX_IGNORE_BLACK=1 should work right now --- Makefile | 2 +- pre-commit.sh | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) create mode 100755 pre-commit.sh diff --git a/Makefile b/Makefile index e05dd974d2..7f15182dc6 100644 --- a/Makefile +++ b/Makefile @@ -272,7 +272,7 @@ black: reports @(set -o pipefail && $@ $(BLACK_ARGS) awx awxkit awx_collection | tee reports/$@.report) .git/hooks/pre-commit: - @echo "[ -z \$$AWX_IGNORE_BLACK ] && (black --check \`git diff --cached --name-only --diff-filter=AM | grep -E '\.py$\'\` || (echo 'To fix this, run \`make black\` to auto-format your code prior to commit, or set AWX_IGNORE_BLACK=1' && exit 1))" > .git/hooks/pre-commit + @echo "./pre-commit.sh" > .git/hooks/pre-commit @chmod +x .git/hooks/pre-commit genschema: reports diff --git a/pre-commit.sh b/pre-commit.sh new file mode 100755 index 0000000000..24393c790b --- /dev/null +++ b/pre-commit.sh @@ -0,0 +1,8 @@ +#!/usr/bin/bash + +if [ -z $AWX_IGNORE_BLACK ] +then + black --check $(git diff --cached --name-only --diff-filter=AM | grep -E '\.py') || \ + (echo 'To fix this, run `make black` to auto-format your code prior to commit, or set AWX_IGNORE_BLACK=1' && \ + exit 1) +fi