CI configuration¶
IMAS-Validator uses GitHub Actions for CI. This page provides an overview of the CI Plan and deployment processes.
CI Plan¶
The CI plan consists of 3 types of workflows:
- Linting
Runs
black,flake8,mypyandisorton the IMAS-Validator code base. See Code style and linting. This workflow is defined in .github/workflows/linting.yml.
- Testing
This runs all unit tests with pytest, for various versions of Python. This workflow is defined in .github/workflows/test_with_pytest.yml.
- Build docs
This job checks that the Sphinx documentation builds correctly. This workflow is defined in .github/workflows/verify_sphinx_doc.yml.
Deployment¶
PyPI
New tagged releases are automatically build and distribution packages are uploaded on PyPI. This workflow is defined in .github/workflows/publish_pypi.yml.
ReadTheDocs
Each new updates on the develop and main branches are deployed automatically on ReadTheDocs, respectively in the latest and stable versions.