61206c1c3c
The 'tox -epep8' command takes a long time as it checks every single file in the Nova git repository (~1,400 at time of writing). This makes tox use a simple wrapper around flake8 which can be told to restrict the check to only files changed in the current command. This can be invoked in a simple manner with 'tox -epep8 -- -HEAD'. Since most commits only touch a handful of files, this will usually be far faster than checking all 1,400 source files. To check an entire branch for bisectability it can be automated via git rebase -i master -x 'tox -epep8 -- -HEAD' Change-Id: I157d1ccb883ca02402eee51fd7d6a50f86079389
21 lines
475 B
Bash
Executable File
21 lines
475 B
Bash
Executable File
#!/bin/sh
|
|
#
|
|
# A simple wrapper around flake8 which makes it possible
|
|
# to ask it to only verify files changed in the current
|
|
# git HEAD patch.
|
|
#
|
|
# Intended to be invoked via tox:
|
|
#
|
|
# tox -epep8 -- -HEAD
|
|
#
|
|
|
|
if test "x$1" = "x-HEAD" ; then
|
|
shift
|
|
files=$(git diff --name-only HEAD~1 | tr '\n' ' ')
|
|
echo "Running flake8 on ${files}"
|
|
diff -u --from-file /dev/null ${files} | flake8 --diff "$@"
|
|
else
|
|
echo "Running flake8 on all files"
|
|
exec flake8 "$@"
|
|
fi
|