[tox] minversion = 4.0.2 envlist = py3,pep8,cover skipsdist = True [testenv] usedevelop = True setenv = VIRTUAL_ENV={envdir} deps = -r{toxinidir}/test-requirements.txt -r{toxinidir}/requirements.txt git+https://github.com/cloudbase/python-coriolisclient.git commands = stestr run --slowest --exclude-regex coriolis.tests.integration {posargs} [testenv:pep8] commands = flake8 {posargs} [testenv:cover] setenv = {[testenv]setenv} PYTHON=coverage run --source coriolis --parallel-mode commands = stestr run --no-subunit-trace --exclude-regex coriolis.tests.integration {posargs} coverage combine coverage report --fail-under=82 --skip-covered coverage html -d cover coverage xml -o cover/coverage.xml [testenv:integration] # Must be run as root: sudo -E tox -e integration # Requires the scsi_debug kernel module: modinfo scsi_debug # Requires kernel version 5.11 or newer (scsi_debug: per_host_store=1 parameter) setenv = {[testenv]setenv} passenv = CORIOLIS_TEST_SSH_KEY_PATH deps = {[testenv]deps} git+https://github.com/cloudbase/python-coriolisclient.git commands = stestr run --slowest --concurrency=1 --test-path coriolis/tests/integration/ {posargs} [testenv:venv] commands = {posargs} [coverage:run] source = coriolis omit = coriolis/tests/* [flake8] # E125 is deliberately excluded. See https://github.com/jcrocholl/pep8/issues/126 # E251 Skipped due to https://github.com/jcrocholl/pep8/issues/301 ignore = E125,E251,W503,W504,E305,E731,E117,W605,F632,H401,H403,H404,H405,H202 exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools