Skip to content

Commit 85ed115

Browse files
fix npd for incompatible sources on json legacy output (#623)
1 parent d1a81af commit 85ed115

File tree

1 file changed

+15
-1
lines changed

1 file changed

+15
-1
lines changed

pkg/output/legacy_json.go

+15-1
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,27 @@ import (
1919
)
2020

2121
func PrintLegacyJSON(r *detectors.ResultWithMetadata) {
22-
repoPath, remote, err := git.PrepareRepo(r.SourceMetadata.GetGithub().Repository)
22+
var repo string
23+
switch r.SourceType {
24+
case sourcespb.SourceType_SOURCE_TYPE_GIT:
25+
repo = r.SourceMetadata.GetGit().Repository
26+
case sourcespb.SourceType_SOURCE_TYPE_GITHUB:
27+
repo = r.SourceMetadata.GetGithub().Repository
28+
case sourcespb.SourceType_SOURCE_TYPE_GITLAB:
29+
repo = r.SourceMetadata.GetGitlab().Repository
30+
default:
31+
logrus.Errorf("unsupported source type for legacy json output: %s", r.SourceType)
32+
}
33+
34+
// cloning the repo again here is not great and only works with unauthed repos
35+
repoPath, remote, err := git.PrepareRepo(repo)
2336
if err != nil || repoPath == "" {
2437
logrus.WithError(err).Fatal("error preparing git repo for scanning")
2538
}
2639
if remote {
2740
defer os.RemoveAll(repoPath)
2841
}
42+
2943
legacy := ConvertToLegacyJSON(r, repoPath)
3044
out, err := json.Marshal(legacy)
3145
if err != nil {

0 commit comments

Comments
 (0)