-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Improve cache service availability determination and implement conditional error logging #2100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
…to errors - Update isFeatureAvailable() to leverage ACTIONS_CACHE_SERVICE_V2 feature flag - For v2: check ACTIONS_RESULTS_URL availability - For v1: check either ACTIONS_CACHE_URL or ACTIONS_RESULTS_URL availability - Change warning logs to error logs for cache failures - Add comprehensive tests covering all scenarios Co-authored-by: Link- <[email protected]>
- Update restoreCacheV2.test.ts, restoreCache.test.ts, saveCacheV2.test.ts, and saveCache.test.ts - Change test expectations from core.warning to core.error for cache operation failures - All tests now pass successfully Co-authored-by: Link- <[email protected]>
Link-
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fix the implementation as per the comments provided
Co-authored-by: Link- <[email protected]>
Co-authored-by: Link- <[email protected]>
…n as requested Co-authored-by: Link- <[email protected]>
Implemented as requested in commit d48d6b6. Removed the logCacheError function and added inline 5xx server error detection in all four cache functions. |
Co-authored-by: Link- <[email protected]>
Co-authored-by: Link- <[email protected]>
Co-authored-by: Link- <[email protected]>
|
@copilot Update the PR description to match the changes introduced |
Updated the PR description to accurately reflect the actual implementation. The description now correctly describes:
The updated description matches the current implementation rather than the original planned changes. |


This PR improves how the cache service availability is determined in
@actions/toolkitand implements conditional error logging for cache failures based on HTTP status codes.Changes Made
1. Enhanced
isFeatureAvailable()functionThe
isFeatureAvailable()function now properly leverages theACTIONS_CACHE_SERVICE_V2feature flag to determine cache service availability:ACTIONS_RESULTS_URLto be setACTIONS_CACHE_URLto be setBefore:
After:
2. Conditional error logging for cache failures
Updated cache failure logging to differentiate between server errors and other failures:
core.error()core.warning()Applied to all cache functions:
restoreCacheV1()functionrestoreCacheV2()functionsaveCacheV1()functionsaveCacheV2()functionImplementation:
3. Comprehensive test coverage
Added extensive test coverage including:
ACTIONS_CACHE_URLrequirementsACTIONS_RESULTS_URLrequirementsBackward Compatibility
This change maintains full backward compatibility:
ACTIONS_CACHE_URLcontinue to work unchangedFixes #2099.
💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.