
Python 3.6 is installed by default in Ubuntu 18.04 LTS. Therefore, according to Transition Plan [1], it'll be handy to have py36 testenv. For more details, please check Python2 Deprecation Timeline [2] and Python3-first Goal - Completion Criteria [3]. [1] https://wiki.ubuntu.com/Python/Python36Transition [2] https://governance.openstack.org/tc/resolutions/20180529-python2-deprecation-timeline.html [3] https://review.openstack.org/#/c/575933/8/goals/stein/python3-first.rst@42 Change-Id: I03c7658fa863fe4b92aedd1062cb0491477450c1
59 lines
1.5 KiB
INI
59 lines
1.5 KiB
INI
[tox]
|
|
minversion = 2.0
|
|
envlist = py27,py35,pep8,linters
|
|
skipsdist = True
|
|
|
|
[testenv]
|
|
usedevelop = True
|
|
install_command = pip install -U {opts} {packages}
|
|
setenv =
|
|
VIRTUAL_ENV={envdir}
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands = python setup.py test
|
|
|
|
[testenv:linters]
|
|
whitelist_externals = bash
|
|
commands =
|
|
bash -c "cd ansible; find . -type f -regex '.*.y[a]?ml' -print0 | xargs -t -n1 -0 \
|
|
ansible-lint \
|
|
-x ANSIBLE0013,ANSIBLE0012,ANSIBLE0006,ANSIBLE0007,ANSIBLE0010,ANSIBLE0016"
|
|
pykwalify -d browbeat-config.yaml -s browbeat/schema/browbeat.yml
|
|
pykwalify -d browbeat-complete.yaml -s browbeat/schema/browbeat.yml
|
|
bash -c "set -e; for config in $(ls conf/); do \
|
|
echo conf/$config; pykwalify -d conf/$config -s browbeat/schema/browbeat.yml; done"
|
|
|
|
[testenv:pep8]
|
|
commands = flake8 {posargs}
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[testenv:py27]
|
|
basepython = python2.7
|
|
commands = pytest {posargs}
|
|
|
|
[testenv:py35]
|
|
basepython = python3.5
|
|
commands = pytest {posargs}
|
|
|
|
[testenv:py36]
|
|
basepython = python3.6
|
|
commands = pytest {posargs}
|
|
|
|
[testenv:cover]
|
|
commands = python setup.py test --coverage --testr-args='{posargs}'
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:debug]
|
|
commands = oslo_debug_helper {posargs}
|
|
|
|
[flake8]
|
|
# E123, E125 skipped as they are invalid PEP-8.
|
|
show-source = True
|
|
ignore = E123,E125,E226,E302,E41,E231,E203,H233,H306,H238,H236,H404,H405
|
|
max-line-length = 100
|
|
builtins = _
|
|
exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build,ansible/*,.browbeat-venv,.perfkit-venv,.rally-venv,.shaker-venv
|