2 envlist = docs,pep8,pylint,yamllint,ansiblelint,bashate,py27,perm,cover
8 -c{toxinidir}/upper-constraints.txt
9 -chttps://opendev.org/openstack/requirements/raw/branch/master/upper-constraints.txt
10 -r{toxinidir}/requirements.txt
11 -r{toxinidir}/test-requirements.txt
12 install_command = pip install {opts} {packages}
13 commands = nosetests --with-xunit \
16 --cover-package=xtesting \
22 basepython = python2.7
24 doc8 README.rst api --ignore-path api/build
25 sphinx-build -W -b html api/ api/build
28 basepython = python2.7
32 basepython = python2.7
33 whitelist_externals = bash
35 pylint --min-similarity-lines=10 \
36 --disable=locally-disabled --ignore-imports=y --reports=n xtesting
39 basepython = python2.7
45 yamllint -s {[testenv:yamllint]files}
48 basepython = python2.7
50 ansible-lint ansible/site.yml
53 commands = nosetests xtesting/tests/unit
56 basepython = python2.7
59 commands = bashate {[testenv:bashate]files}
62 basepython = python2.7
63 commands = bandit -r xtesting -x tests -n 5 -ll -s B602
66 basepython = python2.7
68 xtesting/tests/unit/ci
69 xtesting/tests/unit/core
70 xtesting/tests/unit/utils/test_decorators.py
71 commands = nosetests --with-coverage --cover-tests \
72 --cover-package xtesting.core \
73 --cover-package xtesting.tests.unit \
74 --cover-package xtesting.utils.decorators \
75 --cover-min-percentage 100 {[testenv:cover]dirs}
78 basepython = python2.7
79 whitelist_externals = bash
80 path=. -not -path './.tox/*' -not -path './.git/*' -not -path './doc/reveal.js/*'
83 find {[testenv:perm]path} \( -type f -not -perm 644 -o -type d -not -perm 755 \) \
84 -exec ls -l \{\} + | grep '.' && exit 1 || exit 0"
86 find {[testenv:perm]path} -exec file \{\} + | grep CRLF && exit 1 || exit 0"