Skip to content

seignovert/test-python-docs

Repository files navigation

CI/CD examples to test and deploy python packages from Github

Docs RTD

CI Github Pages

Codecov Coveralls

PyPI PyPI Version Python Version

Conda Conda Version Conda Platform

License DOI

Python project to showcase how to hook Github with:

  • Read the Docs
  • Travis CI
  • CodeCov
  • Coveralls
  • PyPI
  • Anaconda
  • Github Pages
  • Github Releases
  • Zenodo

See setup.cfg to configure:

  • package description (name, author, url, files…).
  • PyPI deploy settings.
  • Pytest options.
  • Coverage report settings.
  • Linter settings.

See tox.ini to configure:

  • module tests from tests/ folder (with pytest).
  • module coverage (from pytest output).
  • documentation build from docs/ folder (with sphinx, autodoc and napoleon).
  • documentation tests from docs/*.rst files and docstrings in foo module.
  • linter python files syntax (with flake8).

See meta.yaml to configure Anaconda recipe.

See .readthedocs.yml to configure Read the Docs deployment.

See .travis.yml to configure CI tests and deployments to:

See .zenodo.json to configure Zenodo deployment, to get a DOI for each Github release.

(Note: in this test case, we hook our release with Zenodo sandbox interface to avoid dummy publications, therefore the DOI badge is not valid but the record can be found here).

Sphinx autobuild (tip)

Install:

$ pip install sphinx-autobuild

Start autobuild (with live reload):

$ cd docs ; make livehtml