[tox] envlist = linters, unit-tests minversion = 2.3 skipsdist = True [testenv] install_command = pip install -U {opts} {packages} setenv = VIRTUAL_ENV={envdir} OS_STDOUT_CAPTURE=1 OS_STDERR_CAPTURE=1 OS_TEST_TIMEOUT=60 deps = -r{toxinidir}/test-requirements.txt [testenv:linters] basepython = python3 allowlist_externals = bash # Bashate warnings # E001 Trailing Whitespace # E002 Tab indents # E003 Indent not multiple of 4 # E006 Line too long # E010 The "do" should be on same line as for # E011 Then keyword is not on same line as if or elif keyword # E020 Function declaration not in format ^function name {$ # E042 local declaration hides errors commands = bash -c "find {toxinidir}/build-tools \ -not \( -type d -name .?\* -prune \) \ -type f \ -not -name \*~ \ -not -name \*.md \ -name \*.sh \ -print0 | xargs --no-run-if-empty -0 bashate -v -e 'E*' -i E003,E006,E010" bash -c "find {toxinidir}/build-tools \ -not \( -type d -name .?\* -prune \) \ -type f \ -not -name \*~ \ -not -name \*.md \ \( -exec bash -c 'file \{\} | grep -q shell' \; \ -a ! -name '*.sh' \) \ -print0 | xargs --no-run-if-empty -0 bashate -v -e 'E*' -i E001,E002,E003,E006,E010,E011,E020,E042" bash -c "find {toxinidir} \ \( -name stx -prune \) \ -o \( -name .tox -prune \) \ -o -type f -name '*.yaml' \ -print0 | xargs -0 yamllint" [testenv:pep8] basepython = python3 usedevelop = False skip_install = True deps = pep8 commands = pep8 [testenv:venv] basepython = python3 commands = {posargs} [testenv:unit-tests] allowlist_externals = bash basepython = python3 setenv = PYTHON3=python commands = bash -c " \ for f in {toxinidir}/build-tools/unit-tests/* ; do \ $f || exit 1 ; \ done ; \ "