diff --git a/lint.sh b/lint.sh index 2b1dda0..df6970e 100755 --- a/lint.sh +++ b/lint.sh @@ -1,3 +1,3 @@ #!/bin/sh -pylint --load-plugins pylint_django fetcher lists musiclist users utils welcome || pylint-exit $? +pylint --load-plugins pylint_django fetcher lists musiclist users utils welcome || pylint-exit --error-fail --warn-fail $? exit $? diff --git a/pre-commit.sh b/pre-commit.sh new file mode 100755 index 0000000..1798c7b --- /dev/null +++ b/pre-commit.sh @@ -0,0 +1,21 @@ +#!/bin/sh + +set -eu + +STASH_NAME="pre-commit-$(date +%s)" +git stash save -q --keep-index $STASH_NAME + +[ -d venv/ ] || python -m venv venv +. venv/bin/activate +pip install -r requirements.txt -r requirements-dev.txt + +./lint.sh + +LINT_RESULT=$? + +STASHES=$(git stash list) +if [[ $STASHES == "$STASH_NAME" ]]; then + git stash pop -q +fi + +exit $LINT_RESULT