Documentation and website deployment#
Note
This guide is intended for napari core contributors and is not required reading for regular contributors. If you’re looking for information on how to contribute to the documentation, see Contributing Documentation.
The napari documentation and website sources are spread over three repositories, and these are connected and used to generate the documentation and website through several CI workflows detailed below.
-
Workflow file:
build_docs.ymljob:
build-and-uploadPulls in sources from
napari/docsand builds docs locally. Uploads artifacts to this repo (napari/napari).This is triggered on every Pull Request and shows up as a “Build PR Docs” check on the PR.
Workflow file:
deploy_docs.ymljob:
build-and-deployTriggers
deploy_docs.ymlworkflow at the napari/docs repo. Waits for results and reports it.This is triggered on any commit to the
mainbranch onnapari/napari(and consequently triggers a new deployment of thenapari.orgwebsite.)
-
Workflow file:
build_docs.ymljob:
build-and-uploadPulls in sources from
napari/napariand builds docs locally. Uploads artifacts to this repo (napari/docs).This is triggered on every Pull Request and shows up as a “Build PR Docs” check on the PR.
Workflow file:
deploy_docs.ymljob:
build-and-deployBuilds docs locally and deploys resulting artifacts to GitHub pages at the
gh-pagesbranch of napari/napari.github.io.Always deploys to the
dev/folder onnapari.github.io(version “latest” on the website).This is triggered on any commit to the
mainbranch onnapari/docs(and consequently triggers a new deployment of thenapari.orgwebsite.)
Note that these file are not identical to the
napari/napariversions. -
Contains built documentation files (.html) for all versions in the
gh-pagesbranch. Auto-deploys togh-pageson every commit (which in turn happens on every commit to themainbranches of eithernapari/napariornapari/docs).
Notes#
CircleCI is set up in both napari/napari and napari/docs, but doesn’t deploy
documentation. It serves to test the docs build and to provide documentation
previews for PRs. The relevant configuration files are:
On
napari/napari:.circleci/config.yml: builds documentation and stores artifact in the CircleCI platform.github/workflows/circleci.yml: adds a link to the documentation preview to each PR.
On
napari/docs:.circleci/config.yml: builds documentation and stores artifact in the CircleCI platform.github/workflows/circleci.yml: adds a link to the documentation preview to each PR.