ci: migrate docs to GH Actions + bump action versions#28
Merged
Conversation
Move docs hosting from Read the Docs to GitHub Pages via a new docs.yml workflow, extract ci.yml jobs into a reusable _checks.yml (mirroring modern-di), and bump pinned action versions. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Mirrors modern-di. Used by the upcoming docs.yml workflow and lets maintainers reproduce the deploy locally if needed.
Mirrors modern-di's reusable workflow layout. Keeps the redis service block and inline pytest command (just test runs docker compose, which is incompatible with GH Actions service containers). Bumps: checkout v4->v6, setup-just v2->v4, setup-uv v3->v8.2.0.
Triggers and concurrency unchanged. All jobs now live in the reusable workflow, matching modern-di's layout.
Triggers on push to main when docs/, mkdocs.yml, or this workflow changes. Force-pushes the built site to gh-pages via the new just docs-deploy recipe. Replaces Read the Docs as the docs host. GitHub Pages source must be set to gh-pages / (root) in repo settings after the first successful run.
checkout v4->v6, setup-just v2->v4, setup-uv v3->v8.2.0. No behavior change.
Read the Docs is no longer the docs host. docs/requirements.txt remains and is consumed by mkdocs gh-deploy via uvx --with-requirements. After this PR merges and the first docs.yml run creates the gh-pages branch, set repo Settings -> Pages -> Source: gh-pages / (root).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
docs.ymlworkflowci.ymljobs into reusable_checks.yml(mirrorsmodern-di)checkout@v4→@v6,setup-just@v2→@v4,setup-uv@v3→@v8.2.0just docs-deployrecipe.readthedocs.yamlSpec:
planning/specs/2026-06-09-mkdocs-gh-actions-design.mdPlan:
planning/plans/2026-06-09-mkdocs-gh-actions-plan.mdHeads-up: status check names change
CI status check names change shape because the lint/pytest jobs now sit inside the reusable workflow:
main / lintmain / checks / lintmain / pytest (3.13)main / checks / pytest (3.13)main / pytest (3.14)main / checks / pytest (3.14)If branch protection on
mainreferences the old check names, the rules need updating after merge or this PR's checks won't satisfy them.Operational follow-up (after merge)
After the first successful
docs.ymlrun creates thegh-pagesbranch:gh-pages/(root).README.mdline ~172 still points athttps://faststream-redis-timers.readthedocs.io. (Intentionally deferred; the spec marks README updates as out of scope.)Test plan
main / checks / lint,main / checks / pytest (3.13),main / checks / pytest (3.14)) passesmain,docs.ymltriggers automatically (this PR touches.github/workflows/docs.yml)gh-pagesbranch is created on first successfuldocs.ymlrunworkflow_dispatchofdocs.ymlworks🤖 Generated with Claude Code