665704e3dc
The ansible-linter was only running on playbooks, not on roles. This patch corrects the tox environment to ensure that roles are linted. Since roles weren't being linted, some errors had sneaked through. This patch also corrects an unnamed task and disables linting of a task that deliberately uses the shell module. Also fix a comment in the tox file that was referencing a non-existent zuul job. Change-Id: I5b1ca3947e80588ab0cc8d3632f1292fc707aac1
53 lines
1.7 KiB
INI
53 lines
1.7 KiB
INI
[tox]
|
|
minversion = 1.6
|
|
skipsdist = True
|
|
envlist = linters
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
install_command = pip install {opts} {packages}
|
|
deps = -r{toxinidir}/test-requirements.txt
|
|
commands =
|
|
python setup.py testr --slowest --testr-args='{posargs}'
|
|
|
|
[testenv:bindep]
|
|
# Do not install any requirements. We want this to be fast and work even if
|
|
# system dependencies are missing, since it's used to tell you what system
|
|
# dependencies are missing! This also means that bindep must be installed
|
|
# separately, outside of the requirements files.
|
|
deps = bindep
|
|
commands = bindep test
|
|
|
|
[testenv:docs]
|
|
commands = python setup.py build_sphinx
|
|
|
|
[testenv:linters]
|
|
whitelist_externals = bash
|
|
passenv =
|
|
# NOTE(pabelanger): if you'd like to run tox -elinters locally, you'll need
|
|
# to export ANSIBLE_ROLES_PATH pointing to the currect repos.
|
|
# see openstack-zuul-jobs-linters job for more information.
|
|
ANSIBLE_ROLES_PATH
|
|
commands =
|
|
flake8 {posargs}
|
|
# Ansible lint
|
|
# [ANSIBLE0012] Commands should not change things if nothing needs doing
|
|
bash -c "find playbooks -type d -name "legacy" -prune -o \
|
|
-type f -regex '.*.y[a]ml' -print0 | xargs -t -n1 -0 \
|
|
ansible-lint -xANSIBLE0012"
|
|
bash -c 'find roles -maxdepth 1 -mindepth 1 -type d -printf "%p/\n" | \
|
|
xargs -t -n1 ansible-lint -xANSIBLE0012'
|
|
# Ansible Syntax Check
|
|
bash -c "cd playbooks; find . -type f -regex '.*.y[a]?ml' -exec \
|
|
ansible-playbook --syntax-check -i {toxinidir}/tests/inventory \{\} + > /dev/null"
|
|
|
|
[testenv:venv]
|
|
commands = {posargs}
|
|
|
|
[flake8]
|
|
# These are ignored intentionally in openstack-infra projects;
|
|
# please don't submit patches that solely correct them or enable them.
|
|
ignore = E125,E129,H
|
|
show-source = True
|
|
exclude = .venv,.tox,dist,doc,build,*.egg
|