Merge feature/ci-cd-optimization improvements#4846
Conversation
* Extract checks * Remove docker layer from cspell * Give read permission to the checks * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org> Co-authored-by: Arkadii Yakovets <2201626+arkid15r@users.noreply.github.com>
* Extract backend tests workflow and remove docker layer * Add permissions * Add FORCE_COLOR env * Fix ordering * Optimize dependecies installation * Update cache path and comments identation * Remove dead code * Update code * Update permissions --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract codecov upload to a separate workflow * Add permissions * Add checkout * Update code * Add back the checkout step --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Remove docker layer from fuzz tests and setup-backend-environment workflow * Update code * Update code * Add poetry run in entrypoint.fuzz.sh * Update code * Update code * Refactor * Update code * Apply rabbit's suggestions * Remove redundant BACKEND_PORT from migartion step * Update caching * Disable collecting coverage for fuzz tests * Reorder steps in setup-backend-environment action * Apply suggestions * Remove code-quality-checks dependency temporarily * Update code * Update code * Add run-code-quality-checks dependency * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract infrastructure tests * Remove the code-quality-checks dependency temporarily * Apply rabbit suggestions and fix terraform error * Add caching * Reorder * Update path * Add code-quality-checks as dependency * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract tests and remove docker layer * Update code * Update code * Update permissions * Remove code-quality-checks dependency temporarily * Update permissions * Update code * Add caching * Add run-code-quality-checks dependency * Update code * Reorder * Update code * Update code * Update code * Update code * Update caching * Update caching * Refactor * Add checkout * Update setup-frontend-environment action description * Update code * Remove redundant manual caching step * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract e2e tests into a separate workflow * Remove docker layer from frontend * Use custom action * Update code * Add next.js caching * Remove docker layer from e2e tests * Update code * Add e2e dependencies installation step * Add playwright installation and caching * Update code * Update code * Update envs * Update code * Update playwright config and add upload artifact step * Pin service container images by digest * Update e2e tests name * Apply rabbit suggestions * Fix syntax * Update code * Add playwright apt caching * Try playwright container * Fix pipx * Drop set up Python cache * Bump playwright version * Update code * Update install poetry action * Update code * Update code * Update browsers * Update code * Revert some changes * Clean up some steps * Try chromium only * Update code * Add logs * Update smoke test * Update code * Update code * Clean up code * Bump workers count * Revert workers number change * Rebalance CPUs * More CPUs to playwright * Update code * Update code * Update code * Remove apt caching --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract set-release-version * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org> Co-authored-by: Arkadii Yakovets <2201626+arkid15r@users.noreply.github.com>
* Extract build-images * Update build-production-images * Update code * Remove unused docker hub * Update code * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract run-lighthouse-ci into a separate reusable workflow * Update .github/workflows/run-lighthouse-ci.yaml Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* Extract run-zap-baseline-scan into a reusable workflow * Update code
* Extract bootstrap-infrastructure * Update CI/CD * Update CI/CD * Add terraform caching * Refactor terraform bootstraping * Update code * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract scan-images * Update scan-production-images * Update code * Update Trivy caching * Apply cubic suggestion * Update code * Update code * Refactor trivy * Update code * Update code * Update code * Update code * Update code * Update code * Update code * Update code * Revert "Upload SBOM action creation" This reverts commit 51132e4. * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract deploy-nest into a separate reusable workflow * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
* Extract production jobs into a separate workflow * Reorder Update pnpm
* Generalize production and staging workflows * Reorder * Extract checks and tests into a reusable workflow and update run-ci-cd * Update run-fuzz-tests.yaml * Update code * Update code * Update naming * Update code * Update code * Update e2e/playwright.config.ts * Update code * Update code * Update code --------- Co-authored-by: Arkadii Yakovets <arkadii.yakovets@owasp.org>
|
Caution Review failedPull request was closed or merged during review Summary by CodeRabbit
WalkthroughThis PR refactors the monolithic GitHub Actions CI/CD pipeline into a scalable, reusable workflow architecture by converting ChangesCI/CD Workflow Refactoring & Infrastructure Modernization
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested labels
Suggested reviewers
🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|



Checklist
make check-testlocally: all warnings addressed, tests passed