Skip to content

Add GitHub workflow to check Markdown links - #1201

Open
radoslawszulgo wants to merge 11 commits into
8.3from
radoslaw-szulgo-add-link-checker-github-job
Open

radoslawszulgo wants to merge 11 commits into
8.3from
radoslaw-szulgo-add-link-checker-github-job

Conversation

@radoslawszulgo

Copy link
Copy Markdown
Contributor

What

Adds .github/workflows/link-check.yml, which runs mkdocs-link-check (byrnereese/github-action-mkdocs-link-check@1.0) on every pull request.

Why

To catch broken internal and external links in docs/ before they get merged.

Notes for reviewers

  • The workflow scans all of docs/, including subfolders. Recursion is off by default in the action, so it is turned on with recurse: 'yes'.
  • The action turns an option on only when it is exactly 'yes'. A value of 'true' does nothing.
  • The workflow runs on every PR, whatever the target branch or the files changed. A PR that doesn't touch the docs can still fail because of a broken link that was already there.
  • This PR is the first real run of the check. Existing broken links may make it fail, and those will need fixing or an excludes pattern.
  • If external sites give false failures, consider setting synchronous: 'yes'. It is slower but more reliable.

🤖 Generated with Claude Code

Run byrnereese/github-action-mkdocs-link-check on every pull request
to catch broken internal and external links in docs/.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Use synchronous mode so a remote timeout is reported as a broken link
instead of crashing the async checker. Skip relative links, which the
checker resolves against rendered page URLs rather than source files,
and percona.community, whose TLD the checker's URL regex rejects.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
radoslawszulgo and others added 2 commits October 20, 2026 18:25
The install page linked to upgrade-from-70.md, which no longer exists.
Point it to the 8.0 to 8.3 upgrade guide instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The link-check action skips relative links because it resolves them
incorrectly. Run mkdocs build --strict so links to missing pages or
images fail the PR instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
radoslawszulgo and others added 2 commits October 20, 2026 21:02
Set MkDocs anchor validation to warn so the strict build on PRs fails
on links to missing headings. Fix the two typo anchors it found.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The Azure pricing page often responds slower than the checker's fixed
3s timeout, which makes the check flaky. Also rename the job and step
to describe what they check.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
radoslawszulgo and others added 2 commits October 20, 2026 21:14
The old docs.mongodb.com URL returns 404. Point it to the current
MongoDB manual page and anchor.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mkdocs-link-check was flaky: it has a fixed 3s timeout, treats 403 and
429 responses as broken, and its retry accepts 404 pages. lychee uses a
30s timeout, 5 retries, and the GitHub token to avoid github.com rate
limits. Skip localhost examples, the Azure pricing page, the Entra
sign-in portal, and macro-built VEX URLs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
lychee's 30s timeout and retries handle the slow Azure pricing page,
so it no longer needs to be skipped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

This branch was successfully deployed

2 active deployments
radoslaw-szulgo-add-link-checker-github-job - psmdb-docs PR #1201 — a38a3e3e Deployed Oct 20, 2026 by rasika-chivate
radoslaw-szulgo-add-link-checker-github-job - psmdb-docs-8.3 PR #1201 — a38a3e3e Deployed Oct 20, 2026 by rasika-chivate
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.

2 participants