Skip to content

Commit 9d0051f

Browse files
Merge branch 'master' into master
2 parents 5a113df + 81de448 commit 9d0051f

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

cmd/whitesourceExecuteScan.go

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -767,6 +767,7 @@ func collectVulnsAndLibsForProject(
767767
if err != nil {
768768
errorsOccurred = append(errorsOccurred, fmt.Sprint(err))
769769
}
770+
log.Entry().Infof("Current influx data : minor_vulnerabilities = %v / major_vulnerabilities = %v / vulnerabilities = %v", influx.whitesource_data.fields.minor_vulnerabilities, influx.whitesource_data.fields.major_vulnerabilities, influx.whitesource_data.fields.vulnerabilities)
770771

771772
// collect all libraries detected in all related projects and errors
772773
libraries, err := sys.GetProjectHierarchy(project.Token, true)
@@ -897,9 +898,11 @@ func checkProjectSecurityViolations(config *ScanOptions, cvssSeverityLimit float
897898
}
898899

899900
severeVulnerabilities, nonSevereVulnerabilities := ws.CountSecurityVulnerabilities(&alerts, cvssSeverityLimit)
900-
influx.whitesource_data.fields.minor_vulnerabilities = nonSevereVulnerabilities
901-
influx.whitesource_data.fields.major_vulnerabilities = severeVulnerabilities
902-
influx.whitesource_data.fields.vulnerabilities = nonSevereVulnerabilities + severeVulnerabilities
901+
influx.whitesource_data.fields.minor_vulnerabilities += nonSevereVulnerabilities
902+
influx.whitesource_data.fields.major_vulnerabilities += severeVulnerabilities
903+
influx.whitesource_data.fields.vulnerabilities += (nonSevereVulnerabilities + severeVulnerabilities)
904+
log.Entry().Infof("Current influx data : minor_vulnerabilities = %v / major_vulnerabilities = %v / vulnerabilities = %v", influx.whitesource_data.fields.minor_vulnerabilities, influx.whitesource_data.fields.major_vulnerabilities, influx.whitesource_data.fields.vulnerabilities)
905+
903906
if nonSevereVulnerabilities > 0 {
904907
log.Entry().Warnf("WARNING: %v Open Source Software Security vulnerabilities with "+
905908
"CVSS score below threshold %.1f detected in project %s.", nonSevereVulnerabilities,
@@ -910,11 +913,11 @@ func checkProjectSecurityViolations(config *ScanOptions, cvssSeverityLimit float
910913
}
911914
// https://github.com/SAP/jenkins-library/blob/master/vars/whitesourceExecuteScan.groovy#L558
912915
if severeVulnerabilities > 0 {
916+
log.Entry().Infof("%v Open Source Software Security vulnerabilities with CVSS score greater or equal to %.1f detected in project %s", severeVulnerabilities, cvssSeverityLimit, project.Name)
913917
if config.FailOnSevereVulnerabilities {
914918
log.SetErrorCategory(log.ErrorCompliance)
915919
return severeVulnerabilities, alerts, assessedAlerts, fmt.Errorf("%v Open Source Software Security vulnerabilities with CVSS score greater or equal to %.1f detected in project %s", severeVulnerabilities, cvssSeverityLimit, project.Name)
916920
}
917-
log.Entry().Infof("%v Open Source Software Security vulnerabilities with CVSS score greater or equal to %.1f detected in project %s", severeVulnerabilities, cvssSeverityLimit, project.Name)
918921
log.Entry().Info("Step will only create data but not fail due to setting failOnSevereVulnerabilities: false")
919922
return severeVulnerabilities, alerts, assessedAlerts, nil
920923
}

cmd/whitesourceExecuteScan_test.go

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -729,6 +729,9 @@ func TestCheckProjectSecurityViolations(t *testing.T) {
729729
assert.Equal(t, 0, severeVulnerabilities)
730730
assert.Equal(t, 0, len(alerts))
731731
assert.Equal(t, 0, len(assessedAlerts))
732+
assert.Equal(t, 0, influx.whitesource_data.fields.minor_vulnerabilities)
733+
assert.Equal(t, 0, influx.whitesource_data.fields.major_vulnerabilities)
734+
assert.Equal(t, 0, influx.whitesource_data.fields.vulnerabilities)
732735
})
733736

734737
t.Run("error - some vulnerabilities", func(t *testing.T) {
@@ -744,6 +747,9 @@ func TestCheckProjectSecurityViolations(t *testing.T) {
744747
assert.Equal(t, 1, severeVulnerabilities)
745748
assert.Equal(t, 2, len(alerts))
746749
assert.Equal(t, 0, len(assessedAlerts))
750+
assert.Equal(t, 1, influx.whitesource_data.fields.minor_vulnerabilities)
751+
assert.Equal(t, 1, influx.whitesource_data.fields.major_vulnerabilities)
752+
assert.Equal(t, 2, influx.whitesource_data.fields.vulnerabilities)
747753
})
748754

749755
t.Run("success - assessed vulnerabilities", func(t *testing.T) {
@@ -759,6 +765,9 @@ func TestCheckProjectSecurityViolations(t *testing.T) {
759765
assert.Equal(t, 0, severeVulnerabilities)
760766
assert.Equal(t, 0, len(alerts))
761767
assert.Equal(t, 2, len(assessedAlerts))
768+
assert.Equal(t, 0, influx.whitesource_data.fields.minor_vulnerabilities)
769+
assert.Equal(t, 0, influx.whitesource_data.fields.major_vulnerabilities)
770+
assert.Equal(t, 0, influx.whitesource_data.fields.vulnerabilities)
762771
})
763772

764773
t.Run("error - WhiteSource failure", func(t *testing.T) {

0 commit comments

Comments
 (0)