Skip to content

Commit f6cc8c2

Browse files
fix(report): Refactor SBOM generation: split functions, improve PURL logic, set OS as root (#2171)
* separate func * fix purl * os as root component * Update reporter/sbom/purl.go Co-authored-by: MaineK00n <[email protected]> * Update reporter/sbom/purl.go Co-authored-by: MaineK00n <[email protected]> * fix parsing java packages * fix indent * Update reporter/sbom/purl.go Co-authored-by: MaineK00n <[email protected]> * accept suggestions * fix parse pkg name * fix metadata.tools --------- Co-authored-by: MaineK00n <[email protected]>
1 parent fa3c08b commit f6cc8c2

File tree

4 files changed

+366
-157
lines changed

4 files changed

+366
-157
lines changed

reporter/localfile.go

+2-2
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ func (w LocalFileWriter) Write(rs ...models.ScanResult) (err error) {
9494
}
9595

9696
if w.FormatCycloneDXJSON {
97-
bs, err := sbom.GenerateCycloneDX(cyclonedx.BOMFileFormatJSON, r)
97+
bs, err := sbom.SerializeCycloneDX(sbom.ToCycloneDX(r), cyclonedx.BOMFileFormatJSON)
9898
if err != nil {
9999
return xerrors.Errorf("Failed to generate CycloneDX JSON. err: %w", err)
100100
}
@@ -105,7 +105,7 @@ func (w LocalFileWriter) Write(rs ...models.ScanResult) (err error) {
105105
}
106106

107107
if w.FormatCycloneDXXML {
108-
bs, err := sbom.GenerateCycloneDX(cyclonedx.BOMFileFormatXML, r)
108+
bs, err := sbom.SerializeCycloneDX(sbom.ToCycloneDX(r), cyclonedx.BOMFileFormatXML)
109109
if err != nil {
110110
return xerrors.Errorf("Failed to generate CycloneDX XML. err: %w", err)
111111
}

0 commit comments

Comments
 (0)