From 081decef02ee4b8dc2c13a1aed969f2bcec892bd Mon Sep 17 00:00:00 2001 From: Paul Belanger Date: Fri, 1 May 2020 11:24:08 -0400 Subject: [PATCH] Add ansible-lint support for playbooks Change-Id: Id9515f482c52d25328fbc1be48cc6f5865e74a46 Signed-off-by: Paul Belanger --- tox.ini | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/tox.ini b/tox.ini index ad28e0c..33acd20 100644 --- a/tox.ini +++ b/tox.ini @@ -4,6 +4,7 @@ envlist = linters skipsdist = True [testenv] +basepython = python3 deps = -r{toxinidir}/requirements.txt -r{toxinidir}/test-requirements.txt @@ -19,5 +20,16 @@ builtins = _ exclude=.venv,.git,.tox,dist,doc,*lib/python*,*egg,build [testenv:linters] +setenv = + ANSIBLE_ROLES_PATH = .. +whitelist_externals = bash commands = - yamllint -s . + # PEP8 Lint Check + flake8 + # Ansible Lint Check + bash -c "find . -not -path '*/\.*' -type f -regex '.*.y[a]?ml' -print0 | \ + xargs -t -n1 -0 ansible-lint -x 306" + # Ansible Syntax Check + bash -c "find tests -type f -regex '.*.y[a]?ml' -print | xargs -t -n1 \ + ansible-playbook --syntax-check -i tests/inventory \ + -e rolename=$(basename $(pwd)) > /dev/null"