internal/govulncheck: pass mode flag
The govulncheck binary now requires a -mode flag for binary.
Pass it for both source and binary.
Also, rename the test cases to better reflect what they do.
Change-Id: I3602072b6174cc9a292dc503f3716b70c34ed7a3
Reviewed-on: https://go-review.googlesource.com/c/pkgsite-metrics/+/499598
Run-TryBot: Jonathan Amsterdam <jba@google.com>
Reviewed-by: Zvonimir Pavlinovic <zpavlinovic@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
diff --git a/internal/govulncheck/govulncheck.go b/internal/govulncheck/govulncheck.go
index 035ea42..525e8e9 100644
--- a/internal/govulncheck/govulncheck.go
+++ b/internal/govulncheck/govulncheck.go
@@ -267,15 +267,19 @@
pattern := "./..."
dir := ""
+ var modeFlag string
if mode == ModeBinary {
pattern = modulePath
+ modeFlag = "binary"
} else {
dir = modulePath
+ modeFlag = "source"
}
stdOut := bytes.Buffer{}
stdErr := bytes.Buffer{}
- govulncheckCmd := exec.Command(govulncheckPath, "-json", "-db=file://"+vulndbDir, "-C="+dir, pattern)
+ govulncheckCmd := exec.Command(govulncheckPath, "-mode", modeFlag,
+ "-json", "-db=file://"+vulndbDir, "-C="+dir, pattern)
govulncheckCmd.Stdout = &stdOut
govulncheckCmd.Stderr = &stdErr
diff --git a/internal/worker/govulncheck_scan_test.go b/internal/worker/govulncheck_scan_test.go
index cb30677..aca36bb 100644
--- a/internal/worker/govulncheck_scan_test.go
+++ b/internal/worker/govulncheck_scan_test.go
@@ -100,9 +100,9 @@
input string
mode string
}{
- {"govulncheck", "../testdata/module", ModeGovulncheck},
+ {"source", "../testdata/module", ModeGovulncheck},
// test_vuln binary on gcs is built from ../testdata/module.
- {"govulncheck", "test_vuln", ModeBinary},
+ {"binary", "test_vuln", ModeBinary},
} {
tc := tc
t.Run(tc.name, func(t *testing.T) {