blob: c8276fcaa021f5687cf94836144f79b699206a67 [file] [log] [blame]
[tox]
basepython = py36
minversion = 2.5
skipsdist = true
envlist = ansible-lint, shellcheck, yamllint, docs
install_command = pip install --force-reinstall {opts} {packages}
deps = -r{toxinidir}/test-requirements.txt
[testenv:ansible-lint]
description = invoke ansible-lint to analyse Ansible playbooks and roles
deps = -r{toxinidir}/test-requirements.txt
whitelist_externals = bash
# TODO (fdegir): upstream bifrost file bootstrap.yml in install-configure-bifrost/file
# excluded from ansible-lint since we can't fix issues in them and they will disappear
# one they are fixed in upstream
commands =
bash -c "find {toxinidir} -type f -regex '.*.ya?ml' \
! -regex '.*.tox.*\|.*.venv.*' \
-print0 | xargs -t -n1 -0 ansible-lint --nocolor"
[testenv:yamllint]
description = invoke yamllint to analyse YAML files
deps = -r{toxinidir}/test-requirements.txt
whitelist_externals = bash
commands =
bash -c "find {toxinidir} -type f -regex '.*.ya?ml' \
! -regex '.*.tox.*\|.*.venv.*' \
-print0 | xargs -t -n1 -0 yamllint --format standard --strict"
[testenv:shellcheck]
# TODO (fdegir): shellcheck errors are ignored since those come from scenarios
# and we need time to fix those
ignore_outcome = true
description = invoke shellcheck to analyse bash shell scripts
deps = -r{toxinidir}/test-requirements.txt
whitelist_externals = bash
commands =
bash -c "find {toxinidir} -type f -regex '.*.sh' \
! -regex '.*.tox.*\|.*.venv.*' \
-print0 | xargs -t -n1 -0 shellcheck --color=never --source-path={toxinidir} \
--external-sources --format=tty"