2
0

tox.ini 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. [tox]
  2. minversion = 4.0.2
  3. envlist = py3,pep8,cover
  4. skipsdist = True
  5. [testenv]
  6. usedevelop = True
  7. setenv = VIRTUAL_ENV={envdir}
  8. deps =
  9. -r{toxinidir}/test-requirements.txt
  10. -r{toxinidir}/requirements.txt
  11. git+https://github.com/cloudbase/python-coriolisclient.git
  12. commands = stestr run --slowest --exclude-regex coriolis.tests.integration {posargs}
  13. [testenv:pep8]
  14. commands = flake8 {posargs}
  15. [testenv:cover]
  16. setenv =
  17. {[testenv]setenv}
  18. PYTHON=coverage run --source coriolis --parallel-mode
  19. commands =
  20. stestr run --no-subunit-trace --exclude-regex coriolis.tests.integration {posargs}
  21. coverage combine
  22. coverage report --fail-under=82 --skip-covered
  23. coverage html -d cover
  24. coverage xml -o cover/coverage.xml
  25. [testenv:integration]
  26. # Must be run as root: sudo -E tox -e integration
  27. # Requires the scsi_debug kernel module: modinfo scsi_debug
  28. # Requires kernel version 5.11 or newer (scsi_debug: per_host_store=1 parameter)
  29. setenv = {[testenv]setenv}
  30. passenv =
  31. CORIOLIS_TEST_SSH_KEY_PATH
  32. deps =
  33. {[testenv]deps}
  34. git+https://github.com/cloudbase/python-coriolisclient.git
  35. commands = stestr run --slowest --concurrency=1 --test-path coriolis/tests/integration/ {posargs}
  36. [testenv:venv]
  37. commands = {posargs}
  38. [coverage:run]
  39. source = coriolis
  40. omit = coriolis/tests/*
  41. [flake8]
  42. # E125 is deliberately excluded. See https://github.com/jcrocholl/pep8/issues/126
  43. # E251 Skipped due to https://github.com/jcrocholl/pep8/issues/301
  44. ignore = E125,E251,W503,W504,E305,E731,E117,W605,F632,H401,H403,H404,H405,H202
  45. exclude = .venv,.git,.tox,dist,doc,*openstack/common*,*lib/python*,*egg,build,tools