diff --git a/tools/run_pep8.sh b/tools/run_pep8.sh new file mode 100755 index 000000000..4c0f789f1 --- /dev/null +++ b/tools/run_pep8.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +set -e + +echo "Running flake8 ..." +# E711/E712 comparison to False should be 'if cond is False:' or 'if not cond:' +# query = query.filter(Component.disabled == False) +# E125 continuation line does not distinguish itself from next logical line +# H301 one import per line +# H302 import only modules +# TODO(marun) H404 multi line docstring should start with a summary +# TODO(marun) H901,902 use the not operator inline for clarity +# TODO(markmcclain) H202 assertRaises Exception too broad +PEP8_IGNORE="E711,E712,E125,H301,H302,H404,H901,H902,H202" +PEP8_BUILTINS="_" +PEP8_EXCLUDE=".venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,tools" +flake8 --exclude=$PEP8_EXCLUDE --ignore=$PEP8_IGNORE --show-source --builtins=$PEP8_BUILTINS . diff --git a/tox.ini b/tox.ini index d266c7b25..fa00a9731 100644 --- a/tox.ini +++ b/tox.ini @@ -15,8 +15,7 @@ sitepackages = True downloadcache = ~/cache/pip [testenv:pep8] -commands = - flake8 +commands = bash ./tools/run_pep8.sh [testenv:i18n] commands = python ./tools/check_i18n.py ./quantum ./tools/i18n_cfg.py @@ -28,17 +27,3 @@ commands = [testenv:venv] commands = {posargs} - -[flake8] -# E711/E712 comparison to False should be 'if cond is False:' or 'if not cond:' -# query = query.filter(Component.disabled == False) -# E125 continuation line does not distinguish itself from next logical line -# H301 one import per line -# H302 import only modules -# TODO(marun) H404 multi line docstring should start with a summary -# TODO(marun) H901,902 use the not operator inline for clarity -# TODO(markmcclain) H202 assertRaises Exception too broad -ignore = E711,E712,E125,H301,H302,H404,H901,H902,H202 -show-source = true -builtins = _ -exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,tools