[tox]
envlist = linters
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
                      find
                      xargs
commands =
  bash -c "find {toxinidir} \
            \( -name .tox -prune \) \
            -o -type f -name '*.yaml' \
            -print0 | xargs -0 yamllint"
  bash -c "find {toxinidir} \
            -type f -name '*.xml' \
            -print0 | xargs -0 xmllint --noout"

[testenv:venv]
basepython = python3
commands = {posargs}

[testenv:true]
basepython = python3
# Use same environment directory as venv to save space and install time
envdir = {toxworkdir}/venv
commands = true
allowlist_externals = true