Skip to content

Build a multiversion documentation site and publish it to gitlab pages

Thomas Ives requested to merge add-multi-version-docs into release/10.0.0

With this MR we build a documentation site with every MR with the documentation-site job. This will include all the versioned doxygen documentation found as a "generic/docs" package in our registry, for example here, and the doxygen documentation for HEAD (built by the existing doxygen-documentation job).

You can download the site as an artifact from this job, then run it locally using python -m http.server. Note, that the version selector logic is a bit crude and expects the site to be in a subdirectory (this is what GitLab pages does), meaning you need to run python -m http.server from the directory containing site, then navigate to 0.0.0.0:8000/site in you browser.

This MR adds a pages job which will push a new site. This happens whenever we push to main or whenever we tag an RC release. The intention is that during the release candidate phase the site will contain documentation for all the generic/docs packages and the lastest RC release, otherwise it will contain all the generic/docs packages and the main branch. In both cases the base URL (tango-controls.gitlab.io/cppTango) will navigate to the latest real release (9.5.0 right now).

This MR also adds the publish-docs-tarball job which will create a new generic/docs package whenever we tag a real release.

Closes #890 (closed).

Edited by Thomas Ives

Merge request reports