Repository navigation
CLP-897 Split build from analysis - #113
guillaume-dequenne wants to merge 1 commit into
Conversation
| - name: Upload build output for scanning | ||
| uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1 | ||
| with: | ||
| name: build-output-${{ steps.build.outputs.BUILD_NUMBER }} | ||
| path: '**/target' | ||
| retention-days: 3 |
There was a problem hiding this comment.
💡 Performance: Scan artifact uploads ~hundreds of MB of Node.js runtimes every run
The upload step takes path: '**/target', which pulls in runtime/target as well. The runtime module has no sources. Its build downloads six Node.js binaries (darwin-arm64/x64, linux-arm64/x64/musl, win-x64), xz-compresses them, copies them into target/classes as resources, and packs them into the module jar. So every run, PRs included, uploads and then downloads two copies of the compressed runtimes (several hundred MB) and keeps them for 3 days. The scan never uses them: there is nothing to analyze in runtime, and the skip-build check only needs some */target/classes directory, which maven-plugin/target already provides. Excluding the binary payload keeps the analysis the same and removes most of the transfer.
Leave the Node.js runtime payload out of the scan artifact:
- name: Upload build output for scanning
uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
with:
name: build-output-${{ steps.build.outputs.BUILD_NUMBER }}
path: |
**/target
!runtime/target/**/*.xz
!runtime/target/*.jar
retention-days: 3
Was this helpful? React with 👍 / 👎
|
Code Review 👍 Approved with suggestions 0 closed / 1 findings🟡 Medium risk · The CI workflow separates Maven builds from scans and gates promotion on both. Workflow refactored to split Maven build from NEXT analysis, uploading build artifacts for reuse across jobs while maintaining equivalent scanning configuration. Consider excluding 💡 Performance: Scan artifact uploads ~hundreds of MB of Node.js runtimes every run📄 .github/workflows/build.yml:34-39 The upload step takes Leave the Node.js runtime payload out of the scan artifact🤖 Prompt for agentsVerificationFunctional validation No results Rules No rules evaluated Auto-approval Not enabledOptionsAuto-apply is off → Gitar will not commit updates to this branch. Comment with these commands to change the behavior for this request:
Was this helpful? React with 👍 / 👎 | Gitar |





Part of CLP-897
Summary
Dependency
Validation