Skip to content

ci: Extract docs versioning and release into reusable workflows#728

Open
vdusek wants to merge 15 commits intomasterfrom
ci/extract-docs-versioning-workflow
Open

ci: Extract docs versioning and release into reusable workflows#728
vdusek wants to merge 15 commits intomasterfrom
ci/extract-docs-versioning-workflow

Conversation

@vdusek
Copy link
Copy Markdown
Contributor

@vdusek vdusek commented Apr 15, 2026

Summary

Docs versioning (manual_version_docs.yaml):

  • Extract the inline version_docs job from manual_release_stable.yaml into a standalone reusable workflow
  • Can be triggered manually from the GitHub UI (with an optional ref input) or called from the release pipeline
  • Fix api:version ENOENT bug by running docusaurus commands through uv run
  • Clean up all existing versions for the same major version, not just exact major.minor match
  • Remove non-docs artifacts (pyproject.toml, .gitignore, caches) from versioned doc snapshots
  • Align doc_release ref to use version_docs_commitish instead of default_branch

Docs release (manual_release_docs.yaml):

  • Rename _release_docs.yaml to manual_release_docs.yaml to match the naming convention
  • Add optional ref input to workflow_dispatch so it can be triggered from the GitHub UI with a specific ref (falling back to the default branch)
  • Replace CHECKOUT_REF env var approach with a Determine checkout ref step, consistent with manual_version_docs.yaml
  • Update all references in manual_release_stable.yaml and on_master.yaml

🤖 Generated with Claude Code

…workflow

Extract the inline `version_docs` job from `manual_release_stable.yaml` into
a standalone workflow that can be triggered manually or called from the release
pipeline. Key improvements:
- Fix `api:version` ENOENT bug by running docusaurus commands through `uv run`
- Clean up ALL versions for the same major (not just exact major.minor match)
- Remove non-docs artifacts (pyproject.toml, .gitignore, caches) from snapshots
- Align doc_release ref to use version_docs_commitish instead of default_branch

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vdusek vdusek added adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team. labels Apr 15, 2026
@vdusek vdusek self-assigned this Apr 15, 2026
@github-actions github-actions bot added this to the 138th sprint - Tooling team milestone Apr 15, 2026
@codecov
Copy link
Copy Markdown

codecov bot commented Apr 15, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 95.42%. Comparing base (6ae308d) to head (aff224f).
⚠️ Report is 2 commits behind head on master.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #728      +/-   ##
==========================================
+ Coverage   95.28%   95.42%   +0.13%     
==========================================
  Files          45       45              
  Lines        5114     5114              
==========================================
+ Hits         4873     4880       +7     
+ Misses        241      234       -7     
Flag Coverage Δ
integration 95.42% <ø> (+0.13%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

vdusek and others added 14 commits April 15, 2026 09:57
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Query versions.json for the specific existing version for a given major
instead of aggressively globbing version-${MAJOR}.*. This means:
- Major release (e.g. 3.0.0): nothing is deleted (new major, no prior minor)
- Minor release (e.g. 3.1.0): only the exact old minor (3.0) is removed
- Patch release (e.g. 3.1.1): only the exact current minor (3.1) is removed and recreated

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…cs artifacts

Add gitignore patterns for pyproject.toml and .gitignore inside
website/versioned_docs/ so git add never stages them. This replaces
the explicit rm commands in the workflow since changelog.md, .ruff_cache,
and .ty_cache are already covered by existing patterns.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Pass inputs and context values through env variables instead of
direct ${{ }} interpolation in run: blocks. Affected workflows:
- manual_version_docs.yaml (inputs.ref, default_branch, step outputs)
- manual_regenerate_models.yaml (inputs.docs_workflow_run_id, github context)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…kflow

Match the structure of `manual_version_docs.yaml` so it can be triggered
both from the GitHub UI (with an optional ref input) and from other workflows.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@vdusek vdusek changed the title ci: Extract docs versioning into reusable manual_version_docs.yaml workflow ci: Extract docs versioning and release into reusable workflows Apr 15, 2026
@vdusek vdusek requested a review from Pijukatel April 15, 2026 12:36
@vdusek vdusek marked this pull request as ready for review April 15, 2026 12:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

adhoc Ad-hoc unplanned task added during the sprint. t-tooling Issues with this label are in the ownership of the tooling team.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants