Summary
We currently have fragmented actions for Node and Java analysis. We should consolidate these into a single, language-agnostic test-and-analyse core that leverages standard coverage formats.
The Proposal
Unify the 'Analysis' engine by decoupling the test execution from the report ingestion.
Key Features
- Generic Coverage Ingestion: Support LCOV, JaCoCo, and Sonar-XML agnostically via a standard
coverage_reports input.
- Language-Aware Defaults: Use a
language input to provide smart defaults for Node, Java, Python, etc., while allowing full commands overrides.
- Single Quality Gate: One unified step for SonarCloud/Security analysis, regardless of source language.
Benefits
- Zero Fragmentation: Stop maintaining language-specific analysis clones.
- Scaling to New Languages: Adding Python (like Vexilon) or Go becomes a 5-minute config change rather than a new repo creation.
Summary
We currently have fragmented actions for Node and Java analysis. We should consolidate these into a single, language-agnostic test-and-analyse core that leverages standard coverage formats.
The Proposal
Unify the 'Analysis' engine by decoupling the test execution from the report ingestion.
Key Features
coverage_reportsinput.languageinput to provide smart defaults for Node, Java, Python, etc., while allowing fullcommandsoverrides.Benefits