|
|
|
[tox]
|
|
|
|
envlist = py26,py27,py35,py36
|
|
|
|
|
|
|
|
[testenv:py35]
|
|
|
|
deps = -r{toxinidir}/test/utils/tox/requirements-py3.txt
|
|
|
|
|
|
|
|
[testenv:py36]
|
|
|
|
deps = -r{toxinidir}/test/utils/tox/requirements-py3.txt
|
|
|
|
|
|
|
|
[testenv]
|
|
|
|
deps = -r{toxinidir}/test/utils/tox/requirements.txt
|
|
|
|
whitelist_externals = make
|
|
|
|
commands =
|
|
|
|
python --version
|
|
|
|
py26: python -m compileall -fq -x 'test/samples|contrib/inventory/vagrant.py' lib test contrib
|
|
|
|
py27: python -m compileall -fq -x 'test/samples' lib test contrib
|
|
|
|
py3{5,6}: python -m compileall -fq -x 'test/samples|lib/ansible/modules' lib test contrib
|
|
|
|
make tests
|
|
|
|
passenv =
|
|
|
|
# Pass HOME to the test environment to avoid the missing HOME env
|
|
|
|
# variable error. See issue: #20424
|
|
|
|
HOME
|
|
|
|
|
|
|
|
|
|
|
|
[flake8]
|
|
|
|
# These are things that the devs don't agree make the code more readable
|
|
|
|
# https://github.com/ansible/proposals/issues/50
|
|
|
|
# E123 closing bracket does not match indentation of opening bracket's line
|
|
|
|
# E124 closing bracket does not match visual indentation
|
|
|
|
# E127 continuation line over-indented for visual indent
|
|
|
|
# E128 continuation line under-indented for visual indent
|
|
|
|
# E201 whitespace after '['
|
|
|
|
# E202 whitespace before ']'
|
|
|
|
# E203 whitespace before ','
|
|
|
|
# E221 multiple spaces before operator
|
|
|
|
# E222 multiple spaces after operator
|
|
|
|
# E225 missing whitespace around operator
|
|
|
|
# E226 missing whitespace around arithmetic operator
|
|
|
|
# E227 missing whitespace around bitwise or shift operator
|
|
|
|
# E228 missing whitespace around modulo operator
|
|
|
|
# E231 missing whitespace after ','
|
|
|
|
# E241 multiple spaces after ','
|
|
|
|
# E251 unexpected spaces around keyword / parameter equals
|
|
|
|
# E261 at least two spaces before inline comment
|
|
|
|
# E262 inline comment should start with '# '
|
|
|
|
# E265 block comment should start with '# '
|
|
|
|
# E266 too many leading '#' for block comment
|
|
|
|
# E301 expected 1 blank line, found 0
|
|
|
|
# E302 expected 2 blank lines, found 1
|
|
|
|
# E303 too many blank lines (3)
|
|
|
|
# E402 module level import not at top of file
|
|
|
|
# E502 the backslash is redundant between brackets
|
|
|
|
# E713 test for membership should be 'not in'
|
|
|
|
# E731 do not assign a lambda expression, use a def
|
|
|
|
# W391 blank line at end of file
|
|
|
|
# W503 line break before binary operator
|
|
|
|
ignore = E123,E124,E127,E128,E201,E202,E203,E211,E221,E222,E225,E226,E228,E227,E231,E241,E251,E261,E262,E265,E266,E301,E302,E303,E402,E502,E713,E731,W391,W503
|
|
|
|
# not all the devs believe in 80 column line length
|
|
|
|
max-line-length = 160
|
|
|
|
# Not going to worry about style in the test suite
|
|
|
|
exclude = tests/*
|