This guide covers development setup and contributing to otava-test-data.
Clone the repository and install development dependencies:
git clone https://github.com/your-username/otava-test-data.git cd otava-test-data pip install -e ".[all]"
Run the test suite with pytest:
pytest
With coverage:
pytest --cov=otava_test_data --cov-report=html
This project uses ruff for linting and formatting:
ruff check . ruff format .
Build the Sphinx documentation:
cd docs
make html
Or using invoke:
invoke docs
Releases are automated via GitHub Actions. The workflow publishes to PyPI when a release is created.
pyproject.tomlgit tag v0.1.0 git push origin v0.1.0
The publish workflow uses PyPI trusted publishing (OIDC). To enable this:
For TestPyPI, create a similar trusted publisher with environment: testpypi
You can manually trigger the workflow to publish to TestPyPI for testing:
Install from TestPyPI to verify:
pip install --index-url https://test.pypi.org/simple/ otava-test-data