Dmitriy Rabotyagov 7583efdafa Use centralized requirements for molecule testing
In order to make molecule tests more widespread across roles to cover
variety of usecases, a centralized approach on managing molecule
requirements is applied.

It ensures that there's no need to separately maintain requirements
for molecule and they can be aligned from integrated repo.

Depends-On: https://review.opendev.org/c/openstack/openstack-ansible/+/938571
Change-Id: I4f0b6705f5bdd0ba14225775108732db32600cb3
2025-01-07 17:39:42 +01:00

58 lines
1.3 KiB
INI

[tox]
minversion = 4.0
skipsdist = True
envlist = linters, molecule
ignore_basepython_conflict = True
[testenv]
basepython = python3
usedevelop = False
commands =
/usr/bin/find . -type f -name "*.pyc" -delete
deps =
-c{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
-rhttps://opendev.org/openstack/openstack-ansible/raw/branch/{env:TEST_BRANCH:master}/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=true
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}/examples/playbook.yml
yamllint {toxinidir}
[testenv:molecule]
# You can use DOCKER_REGISTRY and DOCKER_IMAGE_TAG to switch between
# tested distros. I.e:
# DOCKER_IMAGE_TAG=ubuntu-systemd:jammy tox -e molecule
commands =
molecule test
passenv =
{[testenv]passenv}
DOCKER_REGISTRY
DOCKER_IMAGE_TAG
DOCKER_COMMAND