@contrast/contrast 2.0.2-beta.0 → 2.0.2-beta.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/assess/assessConfig.js +9 -0
- package/dist/assess/assessConfig.js.map +1 -0
- package/dist/assess/help.js +37 -0
- package/dist/assess/help.js.map +1 -0
- package/dist/assess/http/index.js +39 -0
- package/dist/assess/http/index.js.map +1 -0
- package/dist/assess/index.js +69 -0
- package/dist/assess/index.js.map +1 -0
- package/dist/assess/metadata/findYamlFile.js +59 -0
- package/dist/assess/metadata/findYamlFile.js.map +1 -0
- package/dist/assess/metadata/index.js +37 -0
- package/dist/assess/metadata/index.js.map +1 -0
- package/dist/assess/metadata/utils.js +159 -0
- package/dist/assess/metadata/utils.js.map +1 -0
- package/dist/assess/printing/index.js +11 -0
- package/dist/assess/printing/index.js.map +1 -0
- package/dist/assess/printing/utils.js +119 -0
- package/dist/assess/printing/utils.js.map +1 -0
- package/dist/audit/auditConfig.js +9 -0
- package/dist/audit/auditConfig.js.map +1 -0
- package/dist/{commands/audit → audit}/auditController.js +9 -13
- package/dist/audit/auditController.js.map +1 -0
- package/dist/audit/auditRequests.js +193 -0
- package/dist/audit/auditRequests.js.map +1 -0
- package/dist/audit/auditRequestsLegacy.js +63 -0
- package/dist/audit/auditRequestsLegacy.js.map +1 -0
- package/dist/audit/catalogueApplication/catalogueApplication.js +16 -29
- package/dist/audit/catalogueApplication/catalogueApplication.js.map +1 -0
- package/dist/audit/help.js +68 -0
- package/dist/audit/help.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/commonApi.js +12 -14
- package/dist/audit/languageAnalysisEngine/commonApi.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js +2 -1
- package/dist/audit/languageAnalysisEngine/filterProjectPath.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js +9 -12
- package/dist/audit/languageAnalysisEngine/getProjectRootFilenames.js.map +1 -0
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js +18 -30
- package/dist/audit/languageAnalysisEngine/sendSnapshot.js.map +1 -0
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +9 -9
- package/dist/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js.map +1 -0
- package/dist/audit/processAudit.js +21 -0
- package/dist/audit/processAudit.js.map +1 -0
- package/dist/audit/report/commonReportingFunctions.js +33 -61
- package/dist/audit/report/commonReportingFunctions.js.map +1 -0
- package/dist/audit/report/models/reportGuidanceModel.js +2 -5
- package/dist/audit/report/models/reportGuidanceModel.js.map +1 -0
- package/dist/audit/report/models/reportLibraryModel.js +3 -7
- package/dist/audit/report/models/reportLibraryModel.js.map +1 -0
- package/dist/audit/report/models/reportListModel.js +4 -9
- package/dist/audit/report/models/reportListModel.js.map +1 -0
- package/dist/audit/report/models/reportOutputModel.js +4 -9
- package/dist/audit/report/models/reportOutputModel.js.map +1 -0
- package/dist/audit/report/models/reportSeverityModel.js +2 -5
- package/dist/audit/report/models/reportSeverityModel.js.map +1 -0
- package/dist/audit/report/models/severityCountModel.js +3 -5
- package/dist/audit/report/models/severityCountModel.js.map +1 -0
- package/dist/audit/report/reportingFeature.js +27 -55
- package/dist/audit/report/reportingFeature.js.map +1 -0
- package/dist/audit/report/utils/reportUtils.js +28 -59
- package/dist/audit/report/utils/reportUtils.js.map +1 -0
- package/dist/audit/save.js +14 -16
- package/dist/audit/save.js.map +1 -0
- package/dist/{commands/audit → audit}/saveFile.js +3 -6
- package/dist/audit/saveFile.js.map +1 -0
- package/dist/auth/auth.js +103 -0
- package/dist/auth/auth.js.map +1 -0
- package/dist/auth/authRequests.js +18 -0
- package/dist/auth/authRequests.js.map +1 -0
- package/dist/cliConstants.js +48 -18
- package/dist/cliConstants.js.map +1 -0
- package/dist/commands/config/config.js +12 -13
- package/dist/commands/config/config.js.map +1 -0
- package/dist/commands/learn/learn.js +3 -6
- package/dist/commands/learn/learn.js.map +1 -0
- package/dist/commands/learn/processLearn.js +3 -6
- package/dist/commands/learn/processLearn.js.map +1 -0
- package/dist/common/HTTPClient.js +193 -94
- package/dist/common/HTTPClient.js.map +1 -0
- package/dist/{scan → common}/autoDetection.js +53 -36
- package/dist/common/autoDetection.js.map +1 -0
- package/dist/common/baseRequest.js +59 -23
- package/dist/common/baseRequest.js.map +1 -0
- package/dist/common/commonHelp.js +13 -13
- package/dist/common/commonHelp.js.map +1 -0
- package/dist/common/errorHandling.js +49 -63
- package/dist/common/errorHandling.js.map +1 -0
- package/dist/common/fail.js +6 -12
- package/dist/common/fail.js.map +1 -0
- package/dist/common/stringManipulations.js +8 -0
- package/dist/common/stringManipulations.js.map +1 -0
- package/dist/common/versionChecker.js +16 -19
- package/dist/common/versionChecker.js.map +1 -0
- package/dist/constants/constants.js +46 -65
- package/dist/constants/constants.js.map +1 -0
- package/dist/constants/lambda.js +8 -5
- package/dist/constants/lambda.js.map +1 -0
- package/dist/constants/locales.js +14 -10
- package/dist/constants/locales.js.map +1 -0
- package/dist/github/fingerprintConfig.js +10 -0
- package/dist/github/fingerprintConfig.js.map +1 -0
- package/dist/github/processFingerprint.js +25 -0
- package/dist/github/processFingerprint.js.map +1 -0
- package/dist/github/projectGroup.js +225 -0
- package/dist/github/projectGroup.js.map +1 -0
- package/dist/github/repoServices.js +91 -0
- package/dist/github/repoServices.js.map +1 -0
- package/dist/index.js +42 -39
- package/dist/index.js.map +1 -0
- package/dist/lambda/analytics.js +6 -9
- package/dist/lambda/analytics.js.map +1 -0
- package/dist/lambda/arn.js +6 -9
- package/dist/lambda/arn.js.map +1 -0
- package/dist/lambda/aws.js +29 -34
- package/dist/lambda/aws.js.map +1 -0
- package/dist/lambda/cliError.js +13 -41
- package/dist/lambda/cliError.js.map +1 -0
- package/dist/lambda/constants.js +3 -4
- package/dist/lambda/constants.js.map +1 -0
- package/dist/lambda/help.js +39 -44
- package/dist/lambda/help.js.map +1 -0
- package/dist/lambda/lambda.js +61 -65
- package/dist/lambda/lambda.js.map +1 -0
- package/dist/lambda/lambdaUtils.js +38 -32
- package/dist/lambda/lambdaUtils.js.map +1 -0
- package/dist/lambda/logUtils.js +21 -17
- package/dist/lambda/logUtils.js.map +1 -0
- package/dist/lambda/scanDetailCompletion.js +19 -25
- package/dist/lambda/scanDetailCompletion.js.map +1 -0
- package/dist/lambda/scanRequest.js +34 -41
- package/dist/lambda/scanRequest.js.map +1 -0
- package/dist/lambda/scanResults.js +8 -10
- package/dist/lambda/scanResults.js.map +1 -0
- package/dist/lambda/types.js +5 -7
- package/dist/lambda/types.js.map +1 -0
- package/dist/lambda/utils.js +33 -35
- package/dist/lambda/utils.js.map +1 -0
- package/dist/sbom/generateSbom.js +6 -10
- package/dist/sbom/generateSbom.js.map +1 -0
- package/dist/scaAnalysis/common/auditReport.js +8 -12
- package/dist/scaAnalysis/common/auditReport.js.map +1 -0
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js +26 -32
- package/dist/scaAnalysis/common/commonReportingFunctionsSca.js.map +1 -0
- package/dist/scaAnalysis/common/formatMessage.js +8 -17
- package/dist/scaAnalysis/common/formatMessage.js.map +1 -0
- package/dist/scaAnalysis/common/models/ScaReportModel.js +4 -9
- package/dist/scaAnalysis/common/models/ScaReportModel.js.map +1 -0
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js +10 -9
- package/dist/scaAnalysis/common/scaParserForGoAndJava.js.map +1 -0
- package/dist/scaAnalysis/common/scaServicesUpload.js +59 -90
- package/dist/scaAnalysis/common/scaServicesUpload.js.map +1 -0
- package/dist/scaAnalysis/common/treeUpload.js +15 -25
- package/dist/scaAnalysis/common/treeUpload.js.map +1 -0
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js +21 -29
- package/dist/scaAnalysis/common/utils/reportUtilsSca.js.map +1 -0
- package/dist/scaAnalysis/dotnet/analysis.js +12 -18
- package/dist/scaAnalysis/dotnet/analysis.js.map +1 -0
- package/dist/scaAnalysis/dotnet/index.js +4 -7
- package/dist/scaAnalysis/dotnet/index.js.map +1 -0
- package/dist/scaAnalysis/go/goAnalysis.js +8 -11
- package/dist/scaAnalysis/go/goAnalysis.js.map +1 -0
- package/dist/scaAnalysis/go/goParseDeps.js +9 -7
- package/dist/scaAnalysis/go/goParseDeps.js.map +1 -0
- package/dist/scaAnalysis/go/goReadDepFile.js +10 -8
- package/dist/scaAnalysis/go/goReadDepFile.js.map +1 -0
- package/dist/scaAnalysis/java/analysis.js +23 -20
- package/dist/scaAnalysis/java/analysis.js.map +1 -0
- package/dist/scaAnalysis/java/index.js +7 -10
- package/dist/scaAnalysis/java/index.js.map +1 -0
- package/dist/scaAnalysis/java/javaBuildDepsParser.js +43 -43
- package/dist/scaAnalysis/java/javaBuildDepsParser.js.map +1 -0
- package/dist/scaAnalysis/javascript/analysis.js +16 -20
- package/dist/scaAnalysis/javascript/analysis.js.map +1 -0
- package/dist/scaAnalysis/javascript/index.js +17 -19
- package/dist/scaAnalysis/javascript/index.js.map +1 -0
- package/dist/scaAnalysis/javascript/scaServiceParser.js +8 -15
- package/dist/scaAnalysis/javascript/scaServiceParser.js.map +1 -0
- package/dist/scaAnalysis/legacy/legacyFlow.js +13 -15
- package/dist/scaAnalysis/legacy/legacyFlow.js.map +1 -0
- package/dist/scaAnalysis/php/analysis.js +15 -16
- package/dist/scaAnalysis/php/analysis.js.map +1 -0
- package/dist/scaAnalysis/php/index.js +5 -8
- package/dist/scaAnalysis/php/index.js.map +1 -0
- package/dist/scaAnalysis/php/phpNewServicesMapper.js +9 -12
- package/dist/scaAnalysis/php/phpNewServicesMapper.js.map +1 -0
- package/dist/scaAnalysis/processServicesFlow.js +86 -32
- package/dist/scaAnalysis/processServicesFlow.js.map +1 -0
- package/dist/scaAnalysis/python/analysis.js +16 -23
- package/dist/scaAnalysis/python/analysis.js.map +1 -0
- package/dist/scaAnalysis/python/index.js +4 -7
- package/dist/scaAnalysis/python/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/gradleParser.js +7 -13
- package/dist/scaAnalysis/repoMode/gradleParser.js.map +1 -0
- package/dist/scaAnalysis/repoMode/index.js +9 -12
- package/dist/scaAnalysis/repoMode/index.js.map +1 -0
- package/dist/scaAnalysis/repoMode/mavenParser.js +109 -73
- package/dist/scaAnalysis/repoMode/mavenParser.js.map +1 -0
- package/dist/scaAnalysis/ruby/analysis.js +32 -46
- package/dist/scaAnalysis/ruby/analysis.js.map +1 -0
- package/dist/scaAnalysis/ruby/index.js +5 -8
- package/dist/scaAnalysis/ruby/index.js.map +1 -0
- package/dist/scaAnalysis/scaAnalysis.js +49 -51
- package/dist/scaAnalysis/scaAnalysis.js.map +1 -0
- package/dist/scan/fileUtils.js +36 -40
- package/dist/scan/fileUtils.js.map +1 -0
- package/dist/scan/formatScanOutput.js +47 -61
- package/dist/scan/formatScanOutput.js.map +1 -0
- package/dist/scan/help.js +8 -11
- package/dist/scan/help.js.map +1 -0
- package/dist/scan/models/groupedResultsModel.js +2 -5
- package/dist/scan/models/groupedResultsModel.js.map +1 -0
- package/dist/scan/models/resultContentModel.js +2 -2
- package/dist/scan/models/resultContentModel.js.map +1 -0
- package/dist/scan/models/scanResultsModel.js +2 -5
- package/dist/scan/models/scanResultsModel.js.map +1 -0
- package/dist/scan/populateProjectIdAndProjectName.js +22 -60
- package/dist/scan/populateProjectIdAndProjectName.js.map +1 -0
- package/dist/scan/processScan.js +28 -0
- package/dist/scan/processScan.js.map +1 -0
- package/dist/scan/saveResults.js +3 -6
- package/dist/scan/saveResults.js.map +1 -0
- package/dist/scan/scan.js +33 -53
- package/dist/scan/scan.js.map +1 -0
- package/dist/scan/scanConfig.js +14 -12
- package/dist/scan/scanConfig.js.map +1 -0
- package/dist/scan/scanController.js +19 -21
- package/dist/scan/scanController.js.map +1 -0
- package/dist/scan/scanRequests.js +86 -0
- package/dist/scan/scanRequests.js.map +1 -0
- package/dist/scan/scanResults.js +26 -72
- package/dist/scan/scanResults.js.map +1 -0
- package/dist/telemetry/telemetry.js +29 -59
- package/dist/telemetry/telemetry.js.map +1 -0
- package/dist/utils/capabilities.js +2 -1
- package/dist/utils/capabilities.js.map +1 -0
- package/dist/utils/commonApi.js +58 -50
- package/dist/utils/commonApi.js.map +1 -0
- package/dist/utils/filterProjectPath.js +2 -1
- package/dist/utils/filterProjectPath.js.map +1 -0
- package/dist/utils/generalAPI.js +11 -33
- package/dist/utils/generalAPI.js.map +1 -0
- package/dist/utils/getConfig.js +8 -13
- package/dist/utils/getConfig.js.map +1 -0
- package/dist/utils/oraWrapper.js +7 -14
- package/dist/utils/oraWrapper.js.map +1 -0
- package/dist/utils/paramsUtil/commandlineParams.js +2 -5
- package/dist/utils/paramsUtil/commandlineParams.js.map +1 -0
- package/dist/utils/paramsUtil/configStoreParams.js +9 -10
- package/dist/utils/paramsUtil/configStoreParams.js.map +1 -0
- package/dist/utils/paramsUtil/envVariableParams.js +2 -3
- package/dist/utils/paramsUtil/envVariableParams.js.map +1 -0
- package/dist/utils/paramsUtil/paramHandler.js +12 -13
- package/dist/utils/paramsUtil/paramHandler.js.map +1 -0
- package/dist/utils/parsedCLIOptions.js +4 -7
- package/dist/utils/parsedCLIOptions.js.map +1 -0
- package/dist/utils/requestUtils.js +7 -13
- package/dist/utils/requestUtils.js.map +1 -0
- package/dist/utils/saveFile.js +8 -11
- package/dist/utils/saveFile.js.map +1 -0
- package/dist/utils/validationCheck.js +5 -11
- package/dist/utils/validationCheck.js.map +1 -0
- package/package.json +40 -48
- package/.prettierignore +0 -1
- package/bin/contrast.js +0 -2
- package/dist/audit/languageAnalysisEngine/util/requestUtils.js +0 -14
- package/dist/commands/audit/auditConfig.js +0 -12
- package/dist/commands/audit/help.js +0 -70
- package/dist/commands/audit/processAudit.js +0 -24
- package/dist/commands/auth/auth.js +0 -120
- package/dist/commands/github/fingerprintConfig.js +0 -13
- package/dist/commands/github/processFingerprint.js +0 -28
- package/dist/commands/github/projectGroup.js +0 -254
- package/dist/commands/github/repoServices.js +0 -108
- package/dist/commands/scan/processScan.js +0 -31
- package/dist/lambda/__mocks__/aws.js +0 -21
- package/dist/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/audit/catalogueApplication/catalogueApplication.js +0 -51
- package/src/audit/languageAnalysisEngine/commonApi.js +0 -20
- package/src/audit/languageAnalysisEngine/filterProjectPath.js +0 -21
- package/src/audit/languageAnalysisEngine/getProjectRootFilenames.js +0 -36
- package/src/audit/languageAnalysisEngine/sendSnapshot.js +0 -57
- package/src/audit/languageAnalysisEngine/util/requestUtils.js +0 -17
- package/src/audit/nodeAnalysisEngine/parseYarn2LockFileContents.js +0 -63
- package/src/audit/report/commonReportingFunctions.js +0 -412
- package/src/audit/report/models/reportGuidanceModel.ts +0 -5
- package/src/audit/report/models/reportLibraryModel.ts +0 -30
- package/src/audit/report/models/reportListModel.ts +0 -49
- package/src/audit/report/models/reportOutputModel.ts +0 -29
- package/src/audit/report/models/reportSeverityModel.ts +0 -18
- package/src/audit/report/models/severityCountModel.ts +0 -22
- package/src/audit/report/reportingFeature.ts +0 -110
- package/src/audit/report/utils/reportUtils.ts +0 -165
- package/src/audit/save.js +0 -67
- package/src/cliConstants.js +0 -522
- package/src/commands/audit/auditConfig.js +0 -18
- package/src/commands/audit/auditController.js +0 -50
- package/src/commands/audit/help.js +0 -72
- package/src/commands/audit/processAudit.js +0 -34
- package/src/commands/audit/saveFile.js +0 -15
- package/src/commands/auth/auth.js +0 -146
- package/src/commands/config/config.js +0 -41
- package/src/commands/github/fingerprintConfig.js +0 -19
- package/src/commands/github/processFingerprint.js +0 -37
- package/src/commands/github/projectGroup.js +0 -294
- package/src/commands/github/repoServices.js +0 -122
- package/src/commands/learn/learn.js +0 -10
- package/src/commands/learn/processLearn.js +0 -13
- package/src/commands/scan/processScan.js +0 -42
- package/src/common/HTTPClient.js +0 -775
- package/src/common/baseRequest.ts +0 -83
- package/src/common/commonHelp.js +0 -53
- package/src/common/errorHandling.js +0 -157
- package/src/common/fail.js +0 -79
- package/src/common/versionChecker.js +0 -75
- package/src/constants/constants.js +0 -71
- package/src/constants/lambda.js +0 -85
- package/src/constants/locales.js +0 -365
- package/src/index.ts +0 -142
- package/src/lambda/__mocks__/aws.ts +0 -32
- package/src/lambda/__mocks__/lambdaConfig.json +0 -42
- package/src/lambda/analytics.ts +0 -9
- package/src/lambda/arn.ts +0 -33
- package/src/lambda/aws.ts +0 -248
- package/src/lambda/cliError.ts +0 -72
- package/src/lambda/constants.ts +0 -11
- package/src/lambda/help.ts +0 -92
- package/src/lambda/lambda.ts +0 -230
- package/src/lambda/lambdaUtils.ts +0 -111
- package/src/lambda/logUtils.ts +0 -64
- package/src/lambda/scanDetailCompletion.ts +0 -78
- package/src/lambda/scanRequest.ts +0 -169
- package/src/lambda/scanResults.ts +0 -29
- package/src/lambda/types.ts +0 -36
- package/src/lambda/utils.ts +0 -188
- package/src/sbom/generateSbom.ts +0 -45
- package/src/scaAnalysis/common/auditReport.js +0 -59
- package/src/scaAnalysis/common/commonReportingFunctionsSca.js +0 -276
- package/src/scaAnalysis/common/formatMessage.js +0 -67
- package/src/scaAnalysis/common/models/ScaReportModel.ts +0 -81
- package/src/scaAnalysis/common/scaParserForGoAndJava.js +0 -41
- package/src/scaAnalysis/common/scaServicesUpload.js +0 -155
- package/src/scaAnalysis/common/treeUpload.js +0 -51
- package/src/scaAnalysis/common/utils/reportUtilsSca.ts +0 -123
- package/src/scaAnalysis/dotnet/analysis.js +0 -72
- package/src/scaAnalysis/dotnet/index.js +0 -11
- package/src/scaAnalysis/go/goAnalysis.js +0 -26
- package/src/scaAnalysis/go/goParseDeps.js +0 -203
- package/src/scaAnalysis/go/goReadDepFile.js +0 -34
- package/src/scaAnalysis/java/analysis.js +0 -148
- package/src/scaAnalysis/java/index.js +0 -29
- package/src/scaAnalysis/java/javaBuildDepsParser.js +0 -439
- package/src/scaAnalysis/javascript/analysis.js +0 -111
- package/src/scaAnalysis/javascript/index.js +0 -104
- package/src/scaAnalysis/javascript/scaServiceParser.js +0 -151
- package/src/scaAnalysis/legacy/legacyFlow.js +0 -43
- package/src/scaAnalysis/php/analysis.js +0 -78
- package/src/scaAnalysis/php/index.js +0 -28
- package/src/scaAnalysis/php/phpNewServicesMapper.js +0 -77
- package/src/scaAnalysis/processServicesFlow.js +0 -119
- package/src/scaAnalysis/python/analysis.js +0 -93
- package/src/scaAnalysis/python/index.js +0 -16
- package/src/scaAnalysis/repoMode/gradleParser.js +0 -88
- package/src/scaAnalysis/repoMode/index.js +0 -21
- package/src/scaAnalysis/repoMode/mavenParser.js +0 -112
- package/src/scaAnalysis/ruby/analysis.js +0 -413
- package/src/scaAnalysis/ruby/index.js +0 -16
- package/src/scaAnalysis/scaAnalysis.js +0 -171
- package/src/scan/autoDetection.js +0 -175
- package/src/scan/fileUtils.js +0 -206
- package/src/scan/formatScanOutput.ts +0 -225
- package/src/scan/help.js +0 -56
- package/src/scan/models/groupedResultsModel.ts +0 -20
- package/src/scan/models/resultContentModel.ts +0 -86
- package/src/scan/models/scanResultsModel.ts +0 -55
- package/src/scan/populateProjectIdAndProjectName.js +0 -73
- package/src/scan/saveResults.js +0 -14
- package/src/scan/scan.ts +0 -68
- package/src/scan/scanConfig.js +0 -58
- package/src/scan/scanController.js +0 -98
- package/src/scan/scanResults.js +0 -171
- package/src/telemetry/telemetry.ts +0 -154
- package/src/utils/capabilities.js +0 -12
- package/src/utils/commonApi.js +0 -103
- package/src/utils/filterProjectPath.js +0 -25
- package/src/utils/generalAPI.js +0 -52
- package/src/utils/getConfig.ts +0 -34
- package/src/utils/oraWrapper.js +0 -29
- package/src/utils/paramsUtil/commandlineParams.js +0 -12
- package/src/utils/paramsUtil/configStoreParams.js +0 -19
- package/src/utils/paramsUtil/envVariableParams.js +0 -10
- package/src/utils/paramsUtil/paramHandler.js +0 -38
- package/src/utils/parsedCLIOptions.js +0 -32
- package/src/utils/requestUtils.js +0 -29
- package/src/utils/saveFile.js +0 -20
- package/src/utils/validationCheck.js +0 -39
|
@@ -1,61 +1,53 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const reportSeverityModel_1 = require("../../../audit/report/models/reportSeverityModel");
|
|
7
|
-
const ScaReportModel_1 = require("../models/ScaReportModel");
|
|
8
|
-
function findHighestSeverityCVESca(cveArray) {
|
|
1
|
+
import { orderBy } from 'lodash-es';
|
|
2
|
+
import { CRITICAL_COLOUR, CRITICAL_PRIORITY, HIGH_COLOUR, HIGH_PRIORITY, LOW_COLOUR, LOW_PRIORITY, MEDIUM_COLOUR, MEDIUM_PRIORITY, NOTE_COLOUR, NOTE_PRIORITY } from '../../../constants/constants.js';
|
|
3
|
+
import { ReportSeverityModel } from '../../../audit/report/models/reportSeverityModel.js';
|
|
4
|
+
import { ScaReportModel } from '../models/ScaReportModel.js';
|
|
5
|
+
export function findHighestSeverityCVESca(cveArray) {
|
|
9
6
|
const mappedToReportSeverityModels = cveArray.map(cve => findCVESeveritySca(cve));
|
|
10
|
-
|
|
7
|
+
//order and get first
|
|
8
|
+
return orderBy(mappedToReportSeverityModels, cve => cve?.priority)[0];
|
|
11
9
|
}
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
return (0, lodash_1.orderBy)(reportSeverityModel, ['priority'], ['asc']);
|
|
10
|
+
export function orderByHighestPrioritySca(reportSeverityModel) {
|
|
11
|
+
return orderBy(reportSeverityModel, ['priority'], ['asc']);
|
|
15
12
|
}
|
|
16
|
-
|
|
17
|
-
function findCVESeveritySca(vulnerabilityModel) {
|
|
13
|
+
export function findCVESeveritySca(vulnerabilityModel) {
|
|
18
14
|
const { name } = vulnerabilityModel;
|
|
19
15
|
if (vulnerabilityModel.cvss3Severity === 'CRITICAL' ||
|
|
20
16
|
vulnerabilityModel.severity === 'CRITICAL') {
|
|
21
|
-
return new
|
|
17
|
+
return new ReportSeverityModel('CRITICAL', CRITICAL_PRIORITY, CRITICAL_COLOUR, name);
|
|
22
18
|
}
|
|
23
19
|
else if (vulnerabilityModel.cvss3Severity === 'HIGH' ||
|
|
24
20
|
vulnerabilityModel.severity === 'HIGH') {
|
|
25
|
-
return new
|
|
21
|
+
return new ReportSeverityModel('HIGH', HIGH_PRIORITY, HIGH_COLOUR, name);
|
|
26
22
|
}
|
|
27
23
|
else if (vulnerabilityModel.cvss3Severity === 'MEDIUM' ||
|
|
28
24
|
vulnerabilityModel.severity === 'MEDIUM') {
|
|
29
|
-
return new
|
|
25
|
+
return new ReportSeverityModel('MEDIUM', MEDIUM_PRIORITY, MEDIUM_COLOUR, name);
|
|
30
26
|
}
|
|
31
27
|
else if (vulnerabilityModel.cvss3Severity === 'LOW' ||
|
|
32
28
|
vulnerabilityModel.severity === 'LOW') {
|
|
33
|
-
return new
|
|
29
|
+
return new ReportSeverityModel('LOW', LOW_PRIORITY, LOW_COLOUR, name);
|
|
34
30
|
}
|
|
35
31
|
else if (vulnerabilityModel.cvss3Severity === 'NOTE' ||
|
|
36
32
|
vulnerabilityModel.severity === 'NOTE') {
|
|
37
|
-
return new
|
|
33
|
+
return new ReportSeverityModel('NOTE', NOTE_PRIORITY, NOTE_COLOUR, name);
|
|
38
34
|
}
|
|
39
35
|
}
|
|
40
|
-
|
|
41
|
-
function convertGenericToTypedReportModelSca(reportArray) {
|
|
36
|
+
export function convertGenericToTypedReportModelSca(reportArray) {
|
|
42
37
|
return reportArray.map((library) => {
|
|
43
|
-
return new
|
|
38
|
+
return new ScaReportModel(library);
|
|
44
39
|
});
|
|
45
40
|
}
|
|
46
|
-
|
|
47
|
-
function severityCountAllLibrariesSca(vulnerableLibraries, severityCount) {
|
|
41
|
+
export function severityCountAllLibrariesSca(vulnerableLibraries, severityCount) {
|
|
48
42
|
vulnerableLibraries.forEach(lib => severityCountAllCVEsSca(lib.vulnerabilities, severityCount));
|
|
49
43
|
return severityCount;
|
|
50
44
|
}
|
|
51
|
-
|
|
52
|
-
function severityCountAllCVEsSca(cveArray, severityCount) {
|
|
45
|
+
export function severityCountAllCVEsSca(cveArray, severityCount) {
|
|
53
46
|
const severityCountInner = severityCount;
|
|
54
47
|
cveArray.forEach(cve => severityCountSingleCVESca(cve, severityCountInner));
|
|
55
48
|
return severityCountInner;
|
|
56
49
|
}
|
|
57
|
-
|
|
58
|
-
function severityCountSingleCVESca(cve, severityCount) {
|
|
50
|
+
export function severityCountSingleCVESca(cve, severityCount) {
|
|
59
51
|
if (cve.cvss3Severity === 'CRITICAL' || cve.severity === 'CRITICAL') {
|
|
60
52
|
severityCount.critical += 1;
|
|
61
53
|
}
|
|
@@ -73,4 +65,4 @@ function severityCountSingleCVESca(cve, severityCount) {
|
|
|
73
65
|
}
|
|
74
66
|
return severityCount;
|
|
75
67
|
}
|
|
76
|
-
|
|
68
|
+
//# sourceMappingURL=reportUtilsSca.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reportUtilsSca.js","sourceRoot":"","sources":["../../../../src/scaAnalysis/common/utils/reportUtilsSca.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
const
|
|
5
|
-
const
|
|
6
|
-
|
|
7
|
-
return new xml2js.Parser({
|
|
1
|
+
import { readFileSync } from 'fs';
|
|
2
|
+
import { Parser } from 'xml2js';
|
|
3
|
+
import i18n from 'i18n';
|
|
4
|
+
export const readAndParseProjectFile = projectFilePath => {
|
|
5
|
+
const projectFile = readFileSync(projectFilePath);
|
|
6
|
+
return new Parser({
|
|
8
7
|
explicitArray: false,
|
|
9
8
|
mergeAttrs: true
|
|
10
9
|
}).parseString(projectFile);
|
|
11
10
|
};
|
|
12
|
-
const readAndParseLockFile = lockFilePath => {
|
|
13
|
-
const lockFile = JSON.parse(
|
|
14
|
-
let count = 0;
|
|
11
|
+
export const readAndParseLockFile = lockFilePath => {
|
|
12
|
+
const lockFile = JSON.parse(readFileSync(lockFilePath).toString());
|
|
13
|
+
let count = 0; // Used to test if some nodes are deleted
|
|
15
14
|
for (const dependenciesNode in lockFile.dependencies) {
|
|
16
15
|
for (const innerNode in lockFile.dependencies[dependenciesNode]) {
|
|
17
16
|
const nodeValidation = JSON.stringify(lockFile.dependencies[dependenciesNode][innerNode]);
|
|
@@ -31,7 +30,7 @@ const readAndParseLockFile = lockFilePath => {
|
|
|
31
30
|
}
|
|
32
31
|
return lockFile;
|
|
33
32
|
};
|
|
34
|
-
const checkForCorrectFiles = languageFiles => {
|
|
33
|
+
export const checkForCorrectFiles = languageFiles => {
|
|
35
34
|
if (!languageFiles.includes('packages.lock.json')) {
|
|
36
35
|
throw new Error(i18n.__('languageAnalysisHasNoLockFile', '.NET'));
|
|
37
36
|
}
|
|
@@ -39,7 +38,7 @@ const checkForCorrectFiles = languageFiles => {
|
|
|
39
38
|
throw new Error(i18n.__('languageAnalysisProjectFileError', '.NET'));
|
|
40
39
|
}
|
|
41
40
|
};
|
|
42
|
-
const getDotNetDeps = (filePath, languageFiles) => {
|
|
41
|
+
export const getDotNetDeps = (filePath, languageFiles) => {
|
|
43
42
|
checkForCorrectFiles(languageFiles);
|
|
44
43
|
const projectFileName = languageFiles.find(fileName => fileName.includes('.csproj'));
|
|
45
44
|
const lockFileName = languageFiles.find(fileName => fileName.includes('.json'));
|
|
@@ -47,9 +46,4 @@ const getDotNetDeps = (filePath, languageFiles) => {
|
|
|
47
46
|
const lockFile = readAndParseLockFile(filePath + `/${lockFileName}`);
|
|
48
47
|
return { projectFile, lockFile };
|
|
49
48
|
};
|
|
50
|
-
|
|
51
|
-
getDotNetDeps,
|
|
52
|
-
readAndParseProjectFile,
|
|
53
|
-
readAndParseLockFile,
|
|
54
|
-
checkForCorrectFiles
|
|
55
|
-
};
|
|
49
|
+
//# sourceMappingURL=analysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/dotnet/analysis.js"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const dotNetAnalysis = (config, languageFiles) => {
|
|
1
|
+
import { getDotNetDeps } from './analysis.js';
|
|
2
|
+
import { createDotNetTSMessage } from '../common/formatMessage.js';
|
|
3
|
+
export const dotNetAnalysis = (config, languageFiles) => {
|
|
5
4
|
const dotNetDeps = getDotNetDeps(config.file, languageFiles.DOTNET);
|
|
6
5
|
return createDotNetTSMessage(dotNetDeps);
|
|
7
6
|
};
|
|
8
|
-
|
|
9
|
-
dotNetAnalysis
|
|
10
|
-
};
|
|
7
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaAnalysis/dotnet/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAA;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE;IACtD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,CAAA;IACnE,OAAO,qBAAqB,CAAC,UAAU,CAAC,CAAA;AAC1C,CAAC,CAAA"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const goAnalysis = config => {
|
|
1
|
+
import { getGoDependencies } from './goReadDepFile.js';
|
|
2
|
+
import { parseGoDependencies } from './goParseDeps.js';
|
|
3
|
+
import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
|
|
4
|
+
import { createGoTSMessage } from '../common/formatMessage.js';
|
|
5
|
+
export const goAnalysis = config => {
|
|
7
6
|
try {
|
|
8
|
-
const rawGoDependencies =
|
|
9
|
-
const parsedGoDependencies =
|
|
7
|
+
const rawGoDependencies = getGoDependencies(config);
|
|
8
|
+
const parsedGoDependencies = parseGoDependencies(rawGoDependencies);
|
|
10
9
|
if (config.legacy === false) {
|
|
11
10
|
return parseDependenciesForSCAServices(parsedGoDependencies);
|
|
12
11
|
}
|
|
@@ -18,6 +17,4 @@ const goAnalysis = config => {
|
|
|
18
17
|
console.log(e.message.toString());
|
|
19
18
|
}
|
|
20
19
|
};
|
|
21
|
-
|
|
22
|
-
goAnalysis
|
|
23
|
-
};
|
|
20
|
+
//# sourceMappingURL=goAnalysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goAnalysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goAnalysis.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AACpF,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAA;AAE9D,MAAM,CAAC,MAAM,UAAU,GAAG,MAAM,CAAC,EAAE;IACjC,IAAI;QACF,MAAM,iBAAiB,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAA;QACnD,MAAM,oBAAoB,GAAG,mBAAmB,CAAC,iBAAiB,CAAC,CAAA;QAEnE,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;YAC3B,OAAO,+BAA+B,CAAC,oBAAoB,CAAC,CAAA;SAC7D;aAAM;YACL,OAAO,iBAAiB,CAAC,oBAAoB,CAAC,CAAA;SAC/C;KACF;IAAC,OAAO,CAAC,EAAE;QACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAA;KAClC;AACH,CAAC,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
|
|
2
|
-
const
|
|
3
|
-
const parseGoDependencies = goDeps => {
|
|
1
|
+
import { createHash } from 'crypto';
|
|
2
|
+
export const parseGoDependencies = goDeps => {
|
|
4
3
|
return parseGo(goDeps);
|
|
5
4
|
};
|
|
6
5
|
const parseGo = modGraphOutput => {
|
|
@@ -51,6 +50,7 @@ const createRootNodes = deps => {
|
|
|
51
50
|
let group = splitEdge[0].substring(0, lastSlash);
|
|
52
51
|
const hash = getHash(splitEdge[0]);
|
|
53
52
|
group = checkGroupExists(group, name);
|
|
53
|
+
//get the edges of the root dependency
|
|
54
54
|
const edgesOfDep = getAllDepsOfADepAsEdge(edge, deps);
|
|
55
55
|
rootDep[rootDeps[0].split(' ')[0]][edge] = {
|
|
56
56
|
artifactID: name,
|
|
@@ -74,7 +74,7 @@ const getRootDeps = deps => {
|
|
|
74
74
|
return rootDeps;
|
|
75
75
|
};
|
|
76
76
|
const getHash = library => {
|
|
77
|
-
let shaSum =
|
|
77
|
+
let shaSum = createHash('sha1');
|
|
78
78
|
shaSum.update(library);
|
|
79
79
|
return shaSum.digest('hex');
|
|
80
80
|
};
|
|
@@ -112,6 +112,7 @@ const checkGroupExists = (group, name) => {
|
|
|
112
112
|
};
|
|
113
113
|
const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
114
114
|
transitiveDeps.forEach(dep => {
|
|
115
|
+
//create transitive dep
|
|
115
116
|
const splitEdge = dep.split('@');
|
|
116
117
|
const splitGroupName = splitEdge[0].split('/');
|
|
117
118
|
const name = splitGroupName.pop();
|
|
@@ -128,8 +129,10 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
|
128
129
|
hash: hash,
|
|
129
130
|
edges: {}
|
|
130
131
|
};
|
|
132
|
+
//add edges to transitiveDep
|
|
131
133
|
const edges = getAllDepsOfADepAsEdge(dep, splitLines);
|
|
132
134
|
transitiveDep.edges = edges;
|
|
135
|
+
//add all edges as a transitive dependency to rootNodes
|
|
133
136
|
const edgesAsName = getAllDepsOfADepAsName(dep, splitLines);
|
|
134
137
|
edgesAsName.forEach(dep => {
|
|
135
138
|
const splitEdge = dep.split('@');
|
|
@@ -150,9 +153,8 @@ const createTransitiveDeps = (transitiveDeps, splitLines, rootNodes) => {
|
|
|
150
153
|
};
|
|
151
154
|
rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
|
|
152
155
|
});
|
|
156
|
+
//add transitive dependency to rootNodes
|
|
153
157
|
rootNodes[Object.keys(rootNodes)[0]][dep] = transitiveDep;
|
|
154
158
|
});
|
|
155
159
|
};
|
|
156
|
-
|
|
157
|
-
parseGoDependencies
|
|
158
|
-
};
|
|
160
|
+
//# sourceMappingURL=goParseDeps.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goParseDeps.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goParseDeps.js"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
const
|
|
4
|
-
const getGoDependencies = config => {
|
|
1
|
+
import childProcess from 'child_process';
|
|
2
|
+
import i18n from 'i18n';
|
|
3
|
+
export const getGoDependencies = config => {
|
|
5
4
|
let cmdStdout;
|
|
6
5
|
let cwd = config.file ? config.file.replace('go.mod', '') : process.cwd();
|
|
7
6
|
try {
|
|
8
|
-
|
|
7
|
+
// A sample of this output can be found
|
|
8
|
+
// in the go test folder data/goModGraphResults.text
|
|
9
|
+
cmdStdout = childProcess.execSync('go mod graph', {
|
|
9
10
|
cwd: cwd,
|
|
10
11
|
maxBuffer: 50 * 1024 * 1024
|
|
11
12
|
});
|
|
@@ -17,9 +18,10 @@ const getGoDependencies = config => {
|
|
|
17
18
|
'\n\n*************** No transitive dependencies ***************\n\nWe are unable to build a dependency tree view from your repository as there were no transitive dependencies found.';
|
|
18
19
|
}
|
|
19
20
|
console.log(i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`));
|
|
21
|
+
// throw new Error(
|
|
22
|
+
// i18n.__('goReadProjectFile', cwd, `${err.message ? err.message : ''}`)
|
|
23
|
+
// )
|
|
20
24
|
process.exit(1);
|
|
21
25
|
}
|
|
22
26
|
};
|
|
23
|
-
|
|
24
|
-
getGoDependencies
|
|
25
|
-
};
|
|
27
|
+
//# sourceMappingURL=goReadDepFile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"goReadDepFile.js","sourceRoot":"","sources":["../../../src/scaAnalysis/go/goReadDepFile.js"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,eAAe,CAAA;AACxC,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAM,CAAC,EAAE;IACxC,IAAI,SAAS,CAAA;IACb,IAAI,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE,CAAA;IAEzE,IAAI;QACF,uCAAuC;QACvC,oDAAoD;QACpD,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC,cAAc,EAAE;YAChD,GAAG,EAAE,GAAG;YACR,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;SAC5B,CAAC,CAAA;QAEF,OAAO,SAAS,CAAC,QAAQ,EAAE,CAAA;KAC5B;IAAC,OAAO,GAAG,EAAE;QACZ,IAAI,GAAG,CAAC,OAAO,KAAK,0BAA0B,EAAE;YAC9C,GAAG,CAAC,OAAO;gBACT,sLAAsL,CAAA;SACzL;QACD,OAAO,CAAC,GAAG,CACT,IAAI,CAAC,EAAE,CAAC,mBAAmB,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CACvE,CAAA;QACD,mBAAmB;QACnB,2EAA2E;QAC3E,IAAI;QACJ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;KAChB;AACH,CAAC,CAAA"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
const fs = require('fs');
|
|
1
|
+
import childProcess from 'child_process';
|
|
2
|
+
import crossSpawn from 'cross-spawn';
|
|
3
|
+
import { sep } from 'path';
|
|
4
|
+
import i18n from 'i18n';
|
|
5
|
+
import fs from 'fs';
|
|
7
6
|
const MAVEN = 'maven';
|
|
8
7
|
const GRADLE = 'gradle';
|
|
9
|
-
const determineProjectTypeAndCwd = (files, config) => {
|
|
8
|
+
export const determineProjectTypeAndCwd = (files, config) => {
|
|
10
9
|
const projectData = {};
|
|
11
10
|
if (files.length > 1) {
|
|
12
11
|
files = files.filter(i => config.fileName.includes(i));
|
|
@@ -17,6 +16,7 @@ const determineProjectTypeAndCwd = (files, config) => {
|
|
|
17
16
|
else if (files[0].includes('build.gradle')) {
|
|
18
17
|
projectData.projectType = GRADLE;
|
|
19
18
|
}
|
|
19
|
+
//clean up the path to be a folder not a file
|
|
20
20
|
projectData.cwd = config.file
|
|
21
21
|
? config.file.replace('pom.xml', '').replace('build.gradle', '')
|
|
22
22
|
: config.file;
|
|
@@ -29,27 +29,35 @@ const buildMaven = (config, projectData, timeout) => {
|
|
|
29
29
|
args.push('-s');
|
|
30
30
|
args.push(config.mavenSettingsPath);
|
|
31
31
|
}
|
|
32
|
-
|
|
32
|
+
// Allow users to provide a custom location for their settings.xml
|
|
33
|
+
const cmdDepTree = crossSpawn.sync(command, args, {
|
|
33
34
|
env: process.env,
|
|
34
35
|
cwd: projectData.cwd,
|
|
35
36
|
timeout
|
|
36
37
|
});
|
|
38
|
+
checkMavenExists(cmdDepTree, config, projectData);
|
|
39
|
+
return cmdDepTree.stdout.toString();
|
|
40
|
+
};
|
|
41
|
+
export const checkMavenExists = (cmdDepTree, config, projectData) => {
|
|
37
42
|
if (cmdDepTree.status !== 0) {
|
|
43
|
+
//if maven not found
|
|
38
44
|
if (config.debug && cmdDepTree.error.code === 'ENOENT') {
|
|
39
45
|
console.log(`ERROR: mvn not found`);
|
|
40
46
|
console.log('Please make sure mvn is installed and accessible');
|
|
41
47
|
}
|
|
42
48
|
throw new Error(i18n.__('mavenDependencyTreeNonZero', projectData.cwd));
|
|
43
49
|
}
|
|
44
|
-
return cmdDepTree.stdout.toString();
|
|
45
50
|
};
|
|
46
51
|
const buildGradle = (config, projectData, timeout) => {
|
|
47
52
|
let cmdStdout;
|
|
48
53
|
let output = {};
|
|
49
54
|
try {
|
|
55
|
+
// path.sep is user here to either execute as "./gradlew" for UNIX/Linux/MacOS
|
|
56
|
+
// & ".\gradlew" for Windows
|
|
57
|
+
// Check if the user has specified a sub-project
|
|
50
58
|
if (config.subProject) {
|
|
51
|
-
cmdStdout =
|
|
52
|
-
|
|
59
|
+
cmdStdout = childProcess.execSync('.' +
|
|
60
|
+
sep +
|
|
53
61
|
'gradlew :' +
|
|
54
62
|
config.subProject +
|
|
55
63
|
':dependencies --configuration runtimeClasspath', {
|
|
@@ -58,9 +66,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
58
66
|
});
|
|
59
67
|
}
|
|
60
68
|
else {
|
|
61
|
-
cmdStdout =
|
|
62
|
-
path.sep +
|
|
63
|
-
'gradlew dependencies --configuration runtimeClasspath', {
|
|
69
|
+
cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies --configuration runtimeClasspath', {
|
|
64
70
|
cwd: projectData.cwd,
|
|
65
71
|
timeout
|
|
66
72
|
});
|
|
@@ -69,7 +75,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
69
75
|
.toString()
|
|
70
76
|
.includes("runtimeClasspath - Runtime classpath of source set 'main'.\n" +
|
|
71
77
|
'No dependencies')) {
|
|
72
|
-
cmdStdout =
|
|
78
|
+
cmdStdout = childProcess.execSync('.' + sep + 'gradlew dependencies', {
|
|
73
79
|
cwd: projectData.cwd,
|
|
74
80
|
timeout
|
|
75
81
|
});
|
|
@@ -87,7 +93,7 @@ const buildGradle = (config, projectData, timeout) => {
|
|
|
87
93
|
}
|
|
88
94
|
}
|
|
89
95
|
};
|
|
90
|
-
const getJavaBuildDeps = (config, files) => {
|
|
96
|
+
export const getJavaBuildDeps = (config, files) => {
|
|
91
97
|
const timeout = 960000;
|
|
92
98
|
let output = {
|
|
93
99
|
mvnDependancyTreeOutput: undefined,
|
|
@@ -103,7 +109,4 @@ const getJavaBuildDeps = (config, files) => {
|
|
|
103
109
|
output.projectType = projectData.projectType;
|
|
104
110
|
return output;
|
|
105
111
|
};
|
|
106
|
-
|
|
107
|
-
getJavaBuildDeps,
|
|
108
|
-
determineProjectTypeAndCwd
|
|
109
|
-
};
|
|
112
|
+
//# sourceMappingURL=analysis.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/analysis.js"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const javaAnalysis = async (config, languageFiles) => {
|
|
1
|
+
import { getJavaBuildDeps } from './analysis.js';
|
|
2
|
+
import { parseBuildDeps } from './javaBuildDepsParser.js';
|
|
3
|
+
import { createJavaTSMessage } from '../common/formatMessage.js';
|
|
4
|
+
import { parseDependenciesForSCAServices } from '../common/scaParserForGoAndJava.js';
|
|
5
|
+
export const javaAnalysis = async (config, languageFiles) => {
|
|
7
6
|
languageFiles.JAVA.forEach(file => {
|
|
8
7
|
file.replace('build.gradle.kts', 'build.gradle');
|
|
9
8
|
});
|
|
@@ -16,9 +15,7 @@ const javaAnalysis = async (config, languageFiles) => {
|
|
|
16
15
|
}
|
|
17
16
|
};
|
|
18
17
|
const buildJavaTree = (config, files) => {
|
|
19
|
-
const javaBuildDeps =
|
|
18
|
+
const javaBuildDeps = getJavaBuildDeps(config, files);
|
|
20
19
|
return parseBuildDeps(config, javaBuildDeps);
|
|
21
20
|
};
|
|
22
|
-
|
|
23
|
-
javaAnalysis
|
|
24
|
-
};
|
|
21
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/scaAnalysis/java/index.js"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAA;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAA;AACzD,OAAO,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAA;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oCAAoC,CAAA;AAEpF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE;IAC1D,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE;QAChC,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,cAAc,CAAC,CAAA;IAClD,CAAC,CAAC,CAAA;IAEF,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,CAAC,CAAA;IAE1D,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE;QAC3B,OAAO,+BAA+B,CAAC,QAAQ,CAAC,CAAA;KACjD;SAAM;QACL,OAAO,mBAAmB,CAAC,QAAQ,CAAC,CAAA;KACrC;AACH,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;IACtC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAA;IACrD,OAAO,cAAc,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;AAC9C,CAAC,CAAA"}
|