Summary
Add tox configuration following OpenStack standards while keeping uv for development.
Motivation
Most OpenStack projects use tox for testing and CI/CD. Our project should follow these standards to be familiar to OpenStack contributors.
Use cases:
- Run tests:
tox -e py3 or tox -e py310
- Run linting:
tox -e pep8
- Generate coverage:
tox -e cover
- Build docs:
tox -e docs
- Run in venv:
tox -e venv -- <command>
Proposal
Add tox.ini following OpenStack SDK patterns:
- Basic environments:
py3, py{310,311,312}
- Linting:
pep8 (using ruff instead of flake8)
- Coverage:
cover
- Venv:
venv for arbitrary commands
- Consider using
tox-uv plugin for performance while keeping OpenStack-style configuration
Keep existing uv workflow for fast local development.
Additional context
Reference: openstacksdk tox.ini
Related to #76 - Supporting various package managers for common OpenStack users.
Summary
Add
toxconfiguration following OpenStack standards while keepinguvfor development.Motivation
Most OpenStack projects use
toxfor testing and CI/CD. Our project should follow these standards to be familiar to OpenStack contributors.Use cases:
tox -e py3ortox -e py310tox -e pep8tox -e covertox -e docstox -e venv -- <command>Proposal
Add
tox.inifollowing OpenStack SDK patterns:py3,py{310,311,312}pep8(using ruff instead of flake8)covervenvfor arbitrary commandstox-uvplugin for performance while keeping OpenStack-style configurationKeep existing
uvworkflow for fast local development.Additional context
Reference: openstacksdk tox.ini
Related to #76 - Supporting various package managers for common OpenStack users.