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.0 → upload-pages-artifact → deploy-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.
Migrate this repo's versioned docs publishing onto the new myst-version-switcher-plugin assemble model (
v0.5.0), replacing the legacypeaceiris/actions-gh-pages+keep_filesgh-pages deployment. This also serves as a real-world test of the plugin's tutorial + migrate-from-gh-pages docs.In this PR (base:
docsbranch)_docs.yml+ci.yml+_publish.yml(the documented tutorial split), adapting the build step to this repo's toolchain.docs.zip(barehtml/root);_publish.ymlrunsassemble@v0.5.0→upload-pages-artifact→deploy-pages(no gh-pages branch).docsbranch is published as the live version (mainhas no MyST docs yet):docsis added to the publish triggers andassembleruns withguard-default-branch: false. Cross-repoobjects.invrefs stay on/docs.v0.5.0release URL todocs/myst.yml; adddocs/navbar_end.mdwith theversion-switcherdirective; retire.github/pages/make_switcher.py. Build keepsnpm i -g mystmd@1.10.1+myst build --strict.Deferred to a later cutover (NOT this PR — needs repo admin, changes live docs)
scripts/migrate.sh <org/repo>to backfilldocs.ziponto existing release tags, flip Settings → Pages → Source to GitHub Actions, set the github-pages environment's deployment branches to No restriction, verify everyswitcher.jsonURL returns 200, then deletegh-pages.PR to follow, targeting the
docsbranch.