Skip to content

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

Merged
coretl merged 2 commits into
docsfrom
docs-version-switcher-assemble
Jun 22, 2026
Merged

Docs: migrate versioned-docs publishing to myst-version-switcher assemble model (v0.5.0)#30
coretl merged 2 commits into
docsfrom
docs-version-switcher-assemble

Conversation

@coretl

@coretl coretl commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

Migrate versioned-docs publishing to the myst-version-switcher assemble model (v0.5.0), replacing the legacy peaceiris/actions-gh-pages + keep_files gh-pages publish and the in-repo make_switcher.py. Also adopts the shared make docs build used by the other PandABlocks repos.

  • ci.yml + _docs.yml + _publish.yml (the documented tutorial split); build driven through make docs, packs docs.zip (bare html/ root); _publish.yml runs assemble@v0.5.0 → deploy.
  • Add a minimal Makefile + CONFIG.example (the repo had none) exposing the same make docs target; gitignore the local CONFIG.
  • .devcontainer/Dockerfile (kas-based): add make + npm so make docs works in the container.
  • docs/myst.yml: add the version-switcher plugin v0.5.0; add navbar_end.md. Retire .github/pages/make_switcher.py.
  • Smoke-built locally: docs build clean, switcher widget renders.
  • During migration the docs branch is published as the live version (guard-default-branch: false).

Note: this repo has only prerelease tags, so there is no non-prerelease "preferred"/stable target yet — the switcher will list docs (+ any backfilled versions) until a release is cut.

The Pages-source flip + gh-pages backfill/delete are a separate cutover (see the issue).

Part of #28. Base: docs.

🤖 Generated with Claude Code

Replace the legacy peaceiris/actions-gh-pages + keep_files publish (and the
in-repo make_switcher.py) with the version-switcher assemble model, and adopt
the shared `make docs` build used by the other PandABlocks repos:

- ci.yml + _docs.yml + _publish.yml (the documented tutorial split). _docs.yml
  drives the build through `make docs` (npx mystmd, pinned by MYSTMD_VERSION in
  CONFIG) and packs docs.zip (bare html/ root); _publish.yml runs assemble@v0.5.0
  -> upload-pages-artifact -> deploy-pages.
- Add a minimal Makefile + CONFIG.example (the repo had none) exposing the same
  `make docs` target; gitignore the local CONFIG copy.
- .devcontainer/Dockerfile (kas-based): add make + npm so `make docs` works in
  the container.
- docs/myst.yml: add the version-switcher plugin v0.5.0; add navbar_end.md.
- Publish the `docs` branch as the live version during migration
  (guard-default-branch: false; main has no MyST docs yet).
- Remove the old docs.yml and .github/pages/{make_switcher.py,index.html}.

The Pages-source flip + gh-pages backfill/delete are a separate cutover.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
main has no MyST docs build yet, so the assemble model drops /main/. Until
docs merges to main, stage the existing gh-pages main/ build into the assemble
site dir so generate lists main in switcher.json and /main/ keeps serving.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@coretl
coretl merged commit da771c8 into docs Jun 22, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant