Skip to content

Docs: migrate versioned-docs publishing to myst-version-switcher assemble model (v0.5.0) #28

Description

@coretl

Migrate this repo's versioned docs publishing onto the new myst-version-switcher-plugin assemble model (v0.5.0), replacing the legacy peaceiris/actions-gh-pages + keep_files gh-pages deployment. This also serves as a real-world test of the plugin's tutorial + migrate-from-gh-pages docs.

In this PR (base: docs branch)

  • Add _docs.yml + ci.yml + _publish.yml (the documented tutorial split), adapting the build step to this repo's toolchain.
  • Build packs docs.zip (bare html/ root); _publish.yml runs assemble@v0.5.0upload-pages-artifactdeploy-pages (no gh-pages branch).
  • During migration the docs branch is published as the live version (main has no MyST docs yet): docs is added to the publish triggers and assemble runs with guard-default-branch: false. Cross-repo objects.inv refs stay on /docs.
  • Add the version-switcher plugin v0.5.0 release URL to docs/myst.yml; add docs/navbar_end.md with the version-switcher directive; retire .github/pages/make_switcher.py. Build keeps npm i -g mystmd@1.10.1 + myst build --strict.

Deferred to a later cutover (NOT this PR — needs repo admin, changes live docs)

  • Run scripts/migrate.sh <org/repo> to backfill docs.zip onto existing release tags, flip Settings → Pages → Source to GitHub Actions, set the github-pages environment's deployment branches to No restriction, verify every switcher.json URL returns 200, then delete gh-pages.

PR to follow, targeting the docs branch.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions