Migrate docs hosting from Read the Docs to GitHub Pages#45
Merged
Conversation
Spec for mirroring modern-di's docs.yml workflow: new GH Actions deploy on push to main, custom domain faststream-outbox.modern-python.org via docs/CNAME, mkdocs.yml site_url, RTD config + readthedocs.io README links removed. Action pin bumps for ci.yml / publish.yml come along so all three workflows land on the same checkout@v6 / setup-just@v4 / setup-uv@v8.2.0 baseline. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Eight bite-sized tasks, one commit per task, plus pre-flight and final verification. Mirrors spec 2026-06-09-mkdocs-github-pages-design.md. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Triggers on push to main when docs/, mkdocs.yml, or this workflow change. Concurrency group serializes deploys; contents:write needed for gh-pages branch push; fetch-depth: 0 needed for gh-deploy history. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Docs now deploy from .github/workflows/docs.yml. RTD project will be archived in the RTD UI after the new URL is live (out-of-repo step). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Replaces readthedocs.io/en/latest/<path>/ with modern-python.org/<path>/ for the three deep links (relay, dlq, how-it-works) and the bare-domain Documentation header link. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
actions/checkout v4 -> v6 extractions/setup-just v2 -> v4 astral-sh/setup-uv v3 -> v8.2.0 Matches the baseline modern-di already runs. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Matches the pins applied to ci.yml and docs.yml in this branch. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
.github/workflows/docs.ymlmirroringmodern-di's pattern:mkdocs gh-deploy --forceon push tomain(paths-filtered), concurrency-serialized,contents: write.just docs-deploytarget driving the deploy viauvx --with-requirements docs/requirements.txt mkdocs gh-deploy --force.docs/CNAMEandmkdocs.ymlsite_urlfor the custom domainfaststream-outbox.modern-python.org..readthedocs.yaml; updates the fourreadthedocs.iolinks inREADME.mdtomodern-python.orgequivalents.ci.ymlandpublish.ymlto the same baseline the newdocs.ymluses (checkout@v6,setup-just@v4,setup-uv@v8.2.0).Spec:
planning/specs/2026-06-09-mkdocs-github-pages-design.mdOut-of-repo steps after merge
faststream-outbox.modern-python.org→modern-python.github.io.gh-pages, set Settings → Pages → Source =gh-pagesbranch,/root.faststream-outboxproject on readthedocs.io.Test plan
ci.ymllint + pytest jobs run with bumped pins).Deploy Docsworkflow runs and creates thegh-pagesbranch.https://faststream-outbox.modern-python.org/returns the docs site once DNS + Pages settings are in place.README.mdlinks resolve to working pages on the new domain.maintouchingdocs/re-deploys.🤖 Generated with Claude Code