9
9
"github.com/google/uuid"
10
10
"github.com/hhatto/gocloc"
11
11
"golang.org/x/exp/maps"
12
+ "golang.org/x/exp/slices"
12
13
13
14
"github.com/bearer/bearer/internal/commands/process/settings"
14
15
"github.com/bearer/bearer/internal/flag"
@@ -52,19 +53,15 @@ func GetData(
52
53
}
53
54
54
55
// add report-specific items
55
- attemptCloudUpload := false
56
56
switch config .Report .Report {
57
57
case flag .ReportDataFlow :
58
58
return data , err
59
59
case flag .ReportSecurity :
60
- attemptCloudUpload = true
61
60
err = security .AddReportData (data , config , baseBranchFindings )
62
61
case flag .ReportSaaS :
63
62
if err = security .AddReportData (data , config , baseBranchFindings ); err != nil {
64
63
return nil , err
65
64
}
66
-
67
- attemptCloudUpload = true
68
65
err = saas .GetReport (data , config , false )
69
66
case flag .ReportPrivacy :
70
67
err = privacy .AddReportData (data , config )
@@ -74,15 +71,17 @@ func GetData(
74
71
return nil , fmt .Errorf (`--report flag "%s" is not supported` , config .Report .Report )
75
72
}
76
73
77
- if attemptCloudUpload && config .Client != nil && config .Client .Error == nil {
78
- // send SaaS report to Cloud
79
- data .SendToCloud = true
80
- saas .SendReport (config , data )
81
- }
82
-
83
74
return data , err
84
75
}
85
76
77
+ func UploadReportToCloud (report * types.ReportData , config settings.Config ) {
78
+ if slices .Contains ([]string {flag .ReportSecurity , flag .ReportSaaS }, config .Report .Report ) {
79
+ if config .Client != nil && config .Client .Error == nil {
80
+ saas .SendReport (config , report )
81
+ }
82
+ }
83
+ }
84
+
86
85
func GetDataflow (reportData * types.ReportData , report globaltypes.Report , config settings.Config , isInternal bool ) error {
87
86
if reportData .Detectors == nil {
88
87
if err := detectors .AddReportData (reportData , report , config ); err != nil {
0 commit comments