ci: Extract docs versioning into reusable manual_version_docs.yaml workflow#857
ci: Extract docs versioning into reusable manual_version_docs.yaml workflow#857
manual_version_docs.yaml workflow#857Conversation
…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 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #857 +/- ##
==========================================
+ Coverage 86.57% 86.64% +0.06%
==========================================
Files 48 48
Lines 2920 2920
==========================================
+ Hits 2528 2530 +2
+ Misses 392 390 -2
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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>
There was a problem hiding this comment.
Pull request overview
This PR refactors the docs versioning step out of the stable release workflow into a reusable GitHub Actions workflow that can be run manually or invoked from the release pipeline, while also adjusting how docs versions are created/cleaned and how Docusaurus is executed.
Changes:
- Added a new reusable workflow (
manual_version_docs.yaml) to snapshot/version Docusaurus docs and commit the results. - Updated
manual_release_stable.yamlto call the reusable workflow instead of embedding the versioning logic inline. - Updated
.gitignoreto ignorepyproject.tomlfiles insidewebsite/versioned_docs/*.
Reviewed changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
.gitignore |
Ignores website/versioned_docs/*/pyproject.toml artifacts from being committed. |
.github/workflows/manual_version_docs.yaml |
New reusable workflow for versioning docs and committing versioned snapshots. |
.github/workflows/manual_release_stable.yaml |
Replaces inline docs versioning job with a call to the new reusable workflow. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.ref, github.event.repository.default_branch, and
steps outputs through env variables instead of direct ${{ }}
interpolation in run: blocks.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
…kflow (#858) Follow-up to #857 ## Summary - Rename `_release_docs.yaml` to `manual_release_docs.yaml` to match the naming convention of other reusable workflows (`manual_version_docs.yaml`, `manual_release_stable.yaml`). - Add an 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 the `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`. Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Summary
version_docsjob frommanual_release_stable.yamlinto a standalonemanual_version_docs.yamlworkflowapi:versionENOENT bug by running docusaurus commands throughuv run(Python deps not available to barenpx)🤖 Generated with Claude Code