ansible-role-cloud-launcher/tox.ini

54 lines
1.4 KiB
INI

[tox]
minversion = 1.4.2
envlist = docs,linters
skipsdist = True
[testenv]
deps = -r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
[testenv:functional]
commands =
ansible-playbook -i tests/inventory tests/test.yaml \
-e "@tests/resources.yml" -e "ansible_python_interpreter={toxinidir}/.tox/functional/bin/python"
passenv = HOME
setenv =
ANSIBLE_CONFIG = {toxinidir}/tests/ansible.cfg
PYTHONUNBUFFERED = 1
[testenv:docs]
commands = python setup.py build_sphinx
[testenv:venv]
commands = {posargs}
[flake8]
# E123, E125 skipped as they are invalid PEP-8.
show-source = True
ignore = E123,E125
builtins = _
exclude=.venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build
[testenv:linters]
setenv =
ANSIBLE_CONFIG = tests/ansible.cfg
whitelist_externals = bash
commands =
# PEP8 Lint Check
flake8
# Ansible Lint Check
#
# 204: Lines < 160
# Things like keys, script lines, etc exceed this. We have good
# taste and only use long lines where appropriate.
#
# 206: {{var}} should have spaces {{ var }}
bash -c "find . -type f -regex '.*.y[a]?ml' ! -path './.tox/*' -print0 | xargs -t -n1 -0 \
ansible-lint -x204 -x 206"
# Ansible Syntax Check
bash -c "find tests -type f -regex '.*.y[a]?ml' ! -name 'resources.yml' \
-print | xargs -t -n1 \
ansible-playbook --syntax-check -i tests/inventory \
-e rolename=$(basename $(pwd)) > /dev/null"