
While having a native Zuul job for testing is really nice, but it puts some imitations, like being unable to use external collections which a role might depend on. In order to overcome these limitations, molecule test job was added, which does exactly same set of actions, except vlan configuration. We also switch ansible-lint job to track molecule playbook. Change-Id: I219cc1c06c49a6710edfd6104580cdc01b768ab0
51 lines
959 B
INI
51 lines
959 B
INI
[tox]
|
|
minversion = 3.1
|
|
skipsdist = True
|
|
envlist = linters
|
|
ignore_basepython_conflict = True
|
|
|
|
[testenv]
|
|
basepython = python3
|
|
usedevelop = False
|
|
commands =
|
|
/usr/bin/find . -type f -name "*.pyc" -delete
|
|
deps =
|
|
-r{toxinidir}/test-requirements.txt
|
|
passenv =
|
|
COMMON_TESTS_PATH
|
|
HOME
|
|
http_proxy
|
|
HTTP_PROXY
|
|
https_proxy
|
|
HTTPS_PROXY
|
|
no_proxy
|
|
NO_PROXY
|
|
TESTING_BRANCH
|
|
TESTING_HOME
|
|
USER
|
|
allowlist_externals =
|
|
bash
|
|
setenv =
|
|
PYTHONUNBUFFERED=1
|
|
TEST_IDEMPOTENCE=false
|
|
VIRTUAL_ENV={envdir}
|
|
WORKING_DIR={toxinidir}
|
|
|
|
[testenv:linters]
|
|
setenv =
|
|
{[testenv]setenv}
|
|
ANSIBLE_ROLES_PATH={envdir}
|
|
commands =
|
|
ansible-galaxy role install git+file://{toxinidir} --roles-path {envdir} --force
|
|
ansible-lint {toxinidir}/molecule/default/playbook.yml
|
|
yamllint {toxinidir}
|
|
|
|
[testenv:molecule]
|
|
deps =
|
|
{[testenv]deps}
|
|
docker
|
|
molecule
|
|
molecule-plugins[docker]
|
|
commands =
|
|
molecule test
|