fix(ci): handle artifact download failures in weekly security audit#693
Conversation
Add resilience to the Vulnerability Report job for transient GitHub Actions infrastructure issues with artifact downloads. Changes: - Downgrade from actions/download-artifact@v6 to v4 for stability - Add retry step when initial download fails - Add verification step to check if artifacts exist - Add graceful handling when artifacts are unavailable - Add warning annotation for missing artifacts - Skip analysis (instead of failing) when artifacts unavailable Root cause: Azure blob storage timeouts cause download-artifact@v6 to fail after 5 retries. This is a GitHub infrastructure issue, not a problem with our security scans which complete successfully. π€ Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]>
π Development Environment OptionsThis repository supports Dev Containers for a consistent development environment. Option 1: GitHub Codespaces (Recommended)Create a cloud-based development environment:
Option 2: VS Code Dev Containers (Local)Use Dev Containers on your local machine:
Option 3: Traditional Local SetupSet up the development environment manually: # Clone the repository
git clone https://github.com/manavgup/rag_modulo.git
cd rag_modulo
git checkout fix/weekly-security-audit-artifact-download
# Initialize development environment
make dev-init
make dev-build
make dev-up
make dev-validateAvailable CommandsOnce in your development environment: make help # Show all available commands
make dev-validate # Validate environment setup
make test-atomic # Run atomic tests
make test-unit # Run unit tests
make lint # Run lintingServices AvailableWhen running
This automated message helps reviewers quickly set up the development environment. |
Code Review: Artifact Download ResilienceSummaryThis PR addresses a critical infrastructure resilience issue in the Weekly Security Audit workflow. The changes add robust error handling for transient GitHub Actions artifact download failures while maintaining workflow reliability. β Strengths1. Excellent Problem Analysis
2. Well-Designed Resilience Strategy
3. Good Conditional Logic 4. Appropriate Use of continue-on-error π Potential Improvements1. Consider Exponential Backoff 2. Minor: Output Consistency 3. Consider Adding Artifact Age Check 4. Documentation Update Needed π‘οΈ Security Considerationsβ No security concerns identified
π§ͺ Testing RecommendationsCurrent test plan is good, but consider:
π Performance Impactβ Minimal overhead
π― Alignment with Project StandardsChecking against CLAUDE.md guidelines: π¬ Final RecommendationAPPROVE β with minor suggestions This is a high-quality fix for a real production issue. The implementation is:
Optional enhancements (non-blocking):
Great work! This exemplifies thoughtful infrastructure engineering. π References:
π€ Review generated by Claude Code |
Summary
Problem
The Weekly Security Audit workflow was failing at the
π₯ Download Security Reportsstep due to Azure blob storage timeouts. The security scans themselves (Backend Security Audit, Frontend Security Audit) complete successfully, but the final Vulnerability Report job fails becauseactions/download-artifact@v6cannot download artifacts from Azure blob storage after 5 retries.Error from failed run:
Solution
actions/download-artifact@v4which has better stabilityChanges
.github/workflows/06-weekly-security-audit.yml: 53 lines added, 2 removedTest plan
π€ Generated with Claude Code