Drop tox.ini

This project uses nox for testing, which relies on a separate
config. Having two files specify the same things in different
formats is a recipe for future divergence.

Move the flake8 config section to a dedicated .flake8 file instead.

Update contributing instructions accordingly, and switch one
remaining tox-based job over to its nox equivalent.

Change-Id: Idfe4b0434436b48e13a4d2b2996c80de61deec49
This commit is contained in:
Jeremy Stanley 2025-01-26 14:30:23 +00:00
parent a8e334bac5
commit 97c7c51eef
4 changed files with 13 additions and 49 deletions

6
.flake8 Normal file
View File

@ -0,0 +1,6 @@
[flake8]
# E123, E125 skipped as they are invalid PEP-8.
show-source = True
ignore = E123,E125,E129,H,W503,W504
builtins = _
exclude=.venv,.git,.nox,.tox,dist,doc,*lib/python*,*egg,build

View File

@ -60,4 +60,4 @@
release:
jobs:
- opendev-release-python
- opendev-publish-unversioned-tox-docs
- opendev-publish-unversioned-nox-docs

View File

@ -20,13 +20,13 @@ tools, or review ``bindep.txt`` by hand.
Running Tests
-------------
The testing system is based on a combination of tox and testr. The canonical
approach to running tests is to simply run the command `tox`. This will
The testing system is based on a combination of nox and testr. The canonical
approach to running tests is to simply run the command `nox`. This will
create virtual environments, populate them with dependencies and run all of
the tests that OpenStack CI systems run. Behind the scenes, tox is running
the tests that OpenStack CI systems run. Behind the scenes, nox is running
`testr run --parallel`, but is set up such that you can supply any additional
testr arguments that are needed to tox. For example, you can run:
`tox -- --analyze-isolation` to cause tox to tell testr to add
testr arguments that are needed to nox. For example, you can run:
`nox -- --analyze-isolation` to cause nox to tell testr to add
--analyze-isolation to its argument list.
It is also possible to run the tests inside of a virtual environment
@ -39,6 +39,6 @@ test-requirements.txt. Installing them via pip, for instance, is simply::
In you go this route, you can interact with the testr command directly.
Running `testr run` will run the entire test suite. `testr run --parallel`
will run it in parallel (this is the default incantation tox uses.) More
will run it in parallel (this is the default incantation nox uses.) More
information about testr can be found at:
https://testrepository.readthedocs.io/en/latest/

42
tox.ini
View File

@ -1,42 +0,0 @@
[tox]
min_version = 3.1
envlist = py3,pep8
ignore_basepython_conflict=true
[testenv]
usedevelop = True
basepython = python3
install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir}
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/test-requirements.txt
commands =
stestr run {posargs}
stestr slowest
[testenv:pep8]
basepython = python3
deps =
hacking>=7,<8
commands = flake8
[testenv:venv]
commands = {posargs}
[testenv:cover]
setenv =
{[testenv]setenv}
PYTHON=coverage run --source bindep --parallel-mode
commands =
stestr run {posargs}
coverage combine
coverage html -d cover
coverage xml -o cover/coverage.xml
[testenv:docs]
deps =
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
commands =
sphinx-build -W -d doc/build/doctrees -b html doc/source/ doc/build/html