nimskull icon indicating copy to clipboard operation
nimskull copied to clipboard

ci: split docs deployment from publisher and deploy directly to pages

Open alaviss opened this issue 4 weeks ago • 0 comments

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 to release_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 using actions/deploy-pages. This allows us to drop the heavyweight gh-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"

alaviss avatar Jul 04 '24 15:07 alaviss