Add a tox environment ansible-syntax for checking ansible syntax

Run this environment in TravisCI.
This commit is contained in:
Mark Goddard 2017-11-17 10:34:28 +00:00
parent 3970b875d4
commit 7281847095
2 changed files with 22 additions and 0 deletions

View File

@ -22,6 +22,8 @@ env:
- TOX_ENV=docs
# Run python2.7 unit tests.
- TOX_ENV=py27
# Run ansible syntax checks.
- TOX_ENV=ansible-syntax
install:
# Install a virtualenv for tox.

20
tox.ini
View File

@ -37,6 +37,26 @@ commands = oslo_debug_helper {posargs}
[testenv:alint]
commands = ansible-lint ansible/*.yaml
[testenv:ansible-syntax]
commands =
# Install ansible role dependencies from Galaxy.
ansible-galaxy install \
-r {toxinidir}/requirements.yml \
-p {toxinidir}/ansible/roles
# Perform an Ansible syntax check. Skip some playbooks which require extra
# variables to be defined.
bash -c \
"ansible-playbook \
--connection=local \
--syntax-check \
--list-tasks \
$(find {toxinidir}/ansible \
-maxdepth 1 \
-name '*.yml' \
-not -name idrac-bootstrap-one.yml \
-not -name idrac-bootstrap.yml) \
{posargs}"
[flake8]
# E123, E125 skipped as they are invalid PEP-8.