-
Notifications
You must be signed in to change notification settings - Fork 98
Explanation of Documentation Setup
Stefan Appelhoff edited this page Dec 7, 2023
·
6 revisions
relevant issues and PRs:
- https://github.com/mne-tools/mne-bids/pull/364
- https://github.com/mne-tools/mne-bids/pull/366
- https://github.com/mne-tools/mne-bids/pull/367
- https://github.com/mne-tools/mne-bids/pull/369
- https://github.com/mne-tools/mne-bids/pull/370
- https://github.com/mne-tools/mne-bids/pull/371
General workflow:
- CircleCI builds the documentation on each PR and uploads artifacts for inspection
- once a PR is merged and CircleCI thus runs on the
mainbranch, the deploy job is being run- the deploy job takes the built docs and pushes them to a
devdirectory on thegh-pagesbranch, leaving all other files and other folders alone
- the deploy job takes the built docs and pushes them to a
- On the
gh-pagesbranch there are several other subdirectories next to the already mentioneddevdirectory:stablev0.1v0.2- etc.
- --> Each of these directories contains the corresponding docs, manually built and pushed to the
gh-pagesbranch by a maintainer who performs a release
- Next to the doc subdirectories, there are two more files, which were added manually:
-
index.html, which re-directs users to the stable docs in thestablesubdirectory -
.nojekyll, which prevents GitHub from performing any jekyll related jobs
-
- Each documentation contains a dropdown menu (supplied through a template extension) to select a different version ... linking to the docs in another subdirectory
- Note: A given version always contains a link to stable and dev version
- Note: A given version furthermore contains links to all previous versions, but NOT the following versions.
- E.g.,
v0.2has links to stable (which could currently bev0.6), dev, andv0.1... but not versionsv0.3,v0.4,v0.5
further notes:
- the currently stable docs are actually duplicated:
- once in their own
vX.Ydirectory - another time in the
stabledirectory
- once in their own
- this is important to get a meaningful link:
mne.tools/mne-bids/stableinstead of.../vX.Y
General workflow:
- The docs were being built via a
make installcall and then uploaded (first manually, but later on via CircleCI) to thegh-pagesbranch. - This was done upon each stable release, hence only the stable docs were available.
- Later on (2019-07-09), the latest (dev) docs were available through the CircleCI build artifacts, which can be linked to by constructing a link with some keywords:
https://circleci.com/api/v1.1/project/github/mne-tools/mne-bids/latest/artifacts/0/html/index.html?branch=main- The condition for this is, that the last CircleCI job to run in a build will produce the
html/index.htmlartifact. - see #216
- Issue: Previous doc versions were not available, no dropdown menu to select dev vs. stable docs