Skip to content

ci: add docs-release-* tag workflow to publish docs at release#3969

Merged
ericallam merged 2 commits into
mainfrom
ci/docs-release-tag-publish-tri-11010
Jun 16, 2026
Merged

ci: add docs-release-* tag workflow to publish docs at release#3969
ericallam merged 2 commits into
mainfrom
ci/docs-release-tag-publish-tri-11010

Conversation

@ericallam

Copy link
Copy Markdown
Member

Summary

Docs deploy from the docs-live branch via Mintlify, so merging to main no longer publishes docs on its own. To publish, push a docs-release-* tag at the commit you want live. The workflow runs the Mintlify broken-links check against that commit, then fast-forwards docs-live to it, which is what Mintlify deploys from.

Design

The ref move uses the GitHub API with force=false, making it fast-forward only: a tag that is not ahead of docs-live fails the job rather than rewinding production. Mintlify's GitHub app reacts to the resulting push and deploys, so no extra deploy credentials are needed.

Usage:

git tag docs-release-2026.06.16   # tag the main commit you want live
git push origin docs-release-2026.06.16

Docs deploy from the docs-live branch via Mintlify, so a push to main no
longer publishes on its own. This workflow publishes at release: push a
docs-release-* tag at the commit you want live, and it runs the Mintlify
broken-links check against that commit, then fast-forwards docs-live to it.

The ref update uses force=false, so it is fast-forward only: a tag that is
not ahead of docs-live fails the job instead of rewinding production.
@changeset-bot

changeset-bot Bot commented Jun 16, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: afee198

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@coderabbitai

coderabbitai Bot commented Jun 16, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Pro

Run ID: fdce5a78-a8e6-4145-9f6e-90e0ab0ec051

📥 Commits

Reviewing files that changed from the base of the PR and between 6e3cad1 and afee198.

📒 Files selected for processing (1)
  • .github/workflows/publish-docs.yml
💤 Files with no reviewable changes (1)
  • .github/workflows/publish-docs.yml
📜 Recent review details
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (3)
  • GitHub Check: Zizmor
  • GitHub Check: Analyze (actions)
  • GitHub Check: Analyze (javascript-typescript)

Walkthrough

A new GitHub Actions workflow file .github/workflows/publish-docs.yml is added. It triggers on pushes of tags matching docs-release-*, checks out the tagged commit, caches ~/.npm, runs a Mintlify broken-links check against the ./docs directory, and then uses gh api to fast-forward the docs-live branch ref to the tagged commit SHA. The workflow requires contents: write permission, runs under a fixed publish-docs concurrency group, and does not cancel in-progress runs.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description covers the workflow functionality and usage but is missing key checklist items and testing details required by the template. Add the checklist section with the three required items (contributing guide, title convention, testing confirmation) and include a Testing section describing the validation steps performed.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly and concisely describes the main change: adding a GitHub Actions workflow for docs publication via tags.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch ci/docs-release-tag-publish-tri-11010

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

github-advanced-security[bot]

This comment was marked as resolved.

coderabbitai[bot]

This comment was marked as resolved.

The publish job has contents: write and triggers a deploy, so restoring an
npm cache that a lower-privileged run could populate is a cache-poisoning
vector. The cache only saved re-downloading the mintlify CLI on a
tag-triggered workflow, so dropping it costs almost nothing.
@ericallam ericallam marked this pull request as ready for review June 16, 2026 14:25

@devin-ai-integration devin-ai-integration Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ Devin Review: No Issues Found

Devin Review analyzed this PR and found no bugs or issues to report.

Open in Devin Review

@ericallam ericallam merged commit 2936382 into main Jun 16, 2026
31 checks passed
@ericallam ericallam deleted the ci/docs-release-tag-publish-tri-11010 branch June 16, 2026 14:33
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.

4 participants