Skip to content

Commit

Permalink
Send filename to xray on sbom-enrich api (#291)
Browse files Browse the repository at this point in the history
  • Loading branch information
barv-jfrog authored Jan 27, 2025
1 parent 09bce2d commit d33f3e4
Show file tree
Hide file tree
Showing 4 changed files with 13 additions and 16 deletions.
19 changes: 8 additions & 11 deletions commands/enrich/enrich.go
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@ import (
"errors"
"fmt"
"github.com/jfrog/jfrog-cli-security/utils/results/output"
"github.com/jfrog/jfrog-client-go/utils/errorutils"
"os"
"os/exec"
"path/filepath"
Expand All @@ -22,7 +23,6 @@ import (
"github.com/jfrog/jfrog-cli-security/utils/xray"
"github.com/jfrog/jfrog-client-go/artifactory/services/fspatterns"
clientutils "github.com/jfrog/jfrog-client-go/utils"
"github.com/jfrog/jfrog-client-go/utils/errorutils"
ioUtils "github.com/jfrog/jfrog-client-go/utils/io"
"github.com/jfrog/jfrog-client-go/utils/io/fileutils"
"github.com/jfrog/jfrog-client-go/utils/log"
Expand Down Expand Up @@ -84,7 +84,7 @@ func AppendVulnsToJson(cmdResults *results.SecurityCommandResults) error {
var vulnerabilities []map[string]string
xrayResults := cmdResults.GetScaScansXrayResults()
if len(xrayResults) == 0 {
return fmt.Errorf("failed while getting sca scan from xray: %s", err.Error())
return fmt.Errorf("xray scan results are empty")
} else if len(xrayResults) > 1 {
log.Warn("Received %d results, parsing only first result", len(xrayResults))
}
Expand All @@ -108,7 +108,7 @@ func AppendVulnsToXML(cmdResults *results.SecurityCommandResults) error {
destination := result.FindElements("//bom")[0]
xrayResults := cmdResults.GetScaScansXrayResults()
if len(xrayResults) == 0 {
return fmt.Errorf("failed while getting sca scan from xray: %s", err.Error())
return fmt.Errorf("xray scan results are empty")
} else if len(xrayResults) > 1 {
log.Warn("Received %d results, parsing only first result", len(xrayResults))
}
Expand Down Expand Up @@ -187,6 +187,10 @@ func (enrichCmd *EnrichCommand) Run() (err error) {
scanResults.GeneralError = errors.Join(scanResults.GeneralError, fileCollectingErr)
}

if scanResults.GetErrors() != nil {
return errorutils.CheckError(scanResults.GetErrors())
}

isXml, err := isXML(scanResults.Targets)
if err != nil {
return
Expand All @@ -200,13 +204,6 @@ func (enrichCmd *EnrichCommand) Run() (err error) {
return
}
}

if err != nil {
return err
}
if scanResults.GetErrors() != nil {
return errorutils.CheckError(scanResults.GetErrors())
}
log.Info("Enrich process completed successfully.")
return nil
}
Expand Down Expand Up @@ -262,7 +259,7 @@ func (enrichCmd *EnrichCommand) createIndexerHandlerFunc(indexedFileProducer par
if err != nil {
return targetResults.AddTargetError(fmt.Errorf("%s failed to create Xray service manager: %s", logPrefix, err.Error()), false)
}
scanResults, err := enrichgraph.RunImportGraphAndGetResults(importGraphParams, xrayManager)
scanResults, err := enrichgraph.RunImportGraphAndGetResults(importGraphParams, xrayManager, filepath.Base(filePath))
if err != nil {
return targetResults.AddTargetError(fmt.Errorf("%s failed to import graph: %s", logPrefix, err.Error()), false)
}
Expand Down
4 changes: 2 additions & 2 deletions commands/enrich/enrichgraph/enrichgraph.go
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ const (
EnrichMinimumVersionXray = "3.101.3"
)

func RunImportGraphAndGetResults(params *EnrichGraphParams, xrayManager *xray.XrayServicesManager) (*services.ScanResponse, error) {
scanId, err := xrayManager.ImportGraph(*params.xrayGraphImportParams)
func RunImportGraphAndGetResults(params *EnrichGraphParams, xrayManager *xray.XrayServicesManager, rootPath string) (*services.ScanResponse, error) {
scanId, err := xrayManager.ImportGraph(*params.xrayGraphImportParams, rootPath)
if err != nil {
return nil, err
}
Expand Down
2 changes: 1 addition & 1 deletion go.mod
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ require (
gopkg.in/warnings.v0 v0.1.2 // indirect
)

// replace github.com/jfrog/jfrog-client-go => github.com/jfrog/jfrog-client-go dev
replace github.com/jfrog/jfrog-client-go => github.com/jfrog/jfrog-client-go v1.28.1-0.20250126110945-81abbdde452f

// replace github.com/jfrog/jfrog-cli-core/v2 => github.com/jfrog/jfrog-cli-core/v2 dev

Expand Down
4 changes: 2 additions & 2 deletions go.sum
Original file line number Diff line number Diff line change
Expand Up @@ -129,8 +129,8 @@ github.com/jfrog/jfrog-apps-config v1.0.1 h1:mtv6k7g8A8BVhlHGlSveapqf4mJfonwvXYL
github.com/jfrog/jfrog-apps-config v1.0.1/go.mod h1:8AIIr1oY9JuH5dylz2S6f8Ym2MaadPLR6noCBO4C22w=
github.com/jfrog/jfrog-cli-core/v2 v2.57.7 h1:2cZS9C5jBYpyCF4PoUzvGCnwFA7CsvG6jszCj1I3tsg=
github.com/jfrog/jfrog-cli-core/v2 v2.57.7/go.mod h1:ueB6LtU+gW7/hTyfKyka/BHi52oo5lEH46RodTly1PU=
github.com/jfrog/jfrog-client-go v1.49.1 h1:AdJ+x+BSka3pCVDu6MCEvojwOmXvy1Q5S0dILvpfoDw=
github.com/jfrog/jfrog-client-go v1.49.1/go.mod h1:ohIfKpMBCQsE9kunrKQ1wvoExpqsPLaluRFO186B5EM=
github.com/jfrog/jfrog-client-go v1.28.1-0.20250126110945-81abbdde452f h1:2IIy3XfvmEp5zJgakKZiyKGGeVyDsouwYmtD+4QiVd4=
github.com/jfrog/jfrog-client-go v1.28.1-0.20250126110945-81abbdde452f/go.mod h1:ohIfKpMBCQsE9kunrKQ1wvoExpqsPLaluRFO186B5EM=
github.com/k0kubun/colorstring v0.0.0-20150214042306-9440f1994b88/go.mod h1:3w7q1U84EfirKl04SVQ/s7nPm1ZPhiXd34z40TNz36k=
github.com/k0kubun/pp v3.0.1+incompatible/go.mod h1:GWse8YhT0p8pT4ir3ZgBbfZild3tgzSScAn6HmfYukg=
github.com/kevinburke/ssh_config v1.2.0 h1:x584FjTGwHzMwvHx18PXxbBVzfnxogHaAReU4gf13a4=
Expand Down

0 comments on commit d33f3e4

Please sign in to comment.