Dmitriy Rabotyagov d4b8abae78 Add molecule job
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
2024-02-23 17:07:40 +01:00

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