30 lines
410 B
Bash
Executable File
30 lines
410 B
Bash
Executable File
#!/bin/sh
|
|
|
|
set -eu
|
|
. .venv/bin/activate
|
|
|
|
STASH_NAME=pre-commit-$(date +%s)
|
|
git stash save -q --keep-index $STASH_NAME
|
|
|
|
flake8 .
|
|
FLAKE_8=$?
|
|
|
|
./test.sh
|
|
TEST=$?
|
|
|
|
STASH_NUM=$(git stash list | grep $STASH_NAME | sed -re 's/stash@\{(.*)\}.*/\1/')
|
|
if [ -n "$STASH_NUM" ]; then
|
|
git stash pop -q stash@{$STASH_NUM}
|
|
fi
|
|
|
|
|
|
if [ $FLAKE_8 -ne 0 ]; then
|
|
exit $FLAKE_8
|
|
fi
|
|
|
|
if [ $TEST -ne 0 ]; then
|
|
exit $TEST
|
|
fi
|
|
|
|
exit 0
|