nimskull
nimskull copied to clipboard
ci: split docs deployment from publisher and deploy directly to pages
Summary
Documentation will now be built using a separated workflow that will be run whenever publisher finishes. This allows us to use the latest page deployment code regardless of the commit that triggered publisher.
Details
- Added
get
sub-command torelease_manifest
, which allow one to extract binary archive name from a release manifest. - "Generated docs" artifacts are now removed. Instead the generated documentation will be obtained from the release tarball for Linux amd64. This allows docs publishing to run regardless of whether the artifact for the latest release has expired or not.
- Documentation deployment will now skip
gh-pages
branch and deploy directly usingactions/deploy-pages
. This allows us to drop the heavyweightgh-pages
branch and remove the latency between push and page being deployed. - Documentation deployment can now be triggered on-demand in case of a prior failure.
- Documentation deployment will now always be done using latest code in
devel
. - Development documentation are also pushed to
/devel
sub-folder. This is preliminary setup for versioned docs in the future.
Notes for Reviewers
- Confirmed working here
- This is a part of the release pipeline development, being upstreamed first since it has immediate benefits of allowing for removal of
gh-pages
branch which is the heaviest branch in the repository. - ~~CI docs are not updated yet, and will be soon :tm:~~ Done.
- Once merged, the repository's pages settings should be changed to "Publish via Actions"