ci: set cache-mode on release workflows - #408
Draft
claude[bot] wants to merge 1 commit into
Draft
Conversation
Add top-level `cache-mode: none` to release.yml and docs.yml so the release and docs-publish paths never read from or write to the Actions cache, regardless of per-step settings. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01MYe3WCXtgiqomNuVQdi4Yd
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.
Requested by David Sanders · Slack thread
Before: The
Releaseworkflow (push tomain) and thePublish documentationworkflow (version tag push) could read from and write to the GitHub Actions cache. Today they avoid it only by convention: eachactions/setup-nodestep opts out withpackage-manager-cache: false, but nothing stops a future step, action, or the reusabletest.ymlthatrelease.ymlcalls from restoring a cache entry into a release run.After: Both workflows declare
cache-mode: noneat the top level. During a release or docs-publish run, every job is denied cache access by the runner, regardless of per-step settings. Becauserelease.ymlinvokestest.ymlviauses:, thenonesetting also caps thetestjobs when they run as part of a release (PR CI runs oftest.ymlare unaffected and keep caching). Any step that still tries to restore or save a cache logs a message and continues rather than failing (a skipped restore is a cache miss; a skipped save is a no-op). The existingpackage-manager-cache: falselines are left in place.Why: GitHub added a workflow- and job-level
cache-modekey so release paths can be fenced off from the shared Actions cache; see the changelog post and the workflow syntax reference.How: Adds a top-level
cache-mode: none(with a one-line comment) after thepermissions:block in.github/workflows/release.ymland.github/workflows/docs.yml. No other lines change;test.ymland the other PR-CI workflows are untouched.Note that PR CI does not exercise the release or docs workflows, so the first release (and first tag push) after merge is the real test. A denied cache step logs and continues rather than failing the run.
🤖 Generated with Claude Code
https://claude.ai/code/session_01MYe3WCXtgiqomNuVQdi4Yd
Generated by Claude Code