Jenkins 使用OWASP dependencyCheck为java模块生成单独的报告,而不是一个大报告
我正试图将Jenkins CI管道生成的依赖项检查报告分解为多个报告(每个模块一个),因为有一个巨大的报告可能会变得相当大且难以阅读。这是我迄今为止完成此任务的代码:Jenkins 使用OWASP dependencyCheck为java模块生成单独的报告,而不是一个大报告,jenkins,continuous-integration,jenkins-pipeline,jenkins-plugins,owasp,Jenkins,Continuous Integration,Jenkins Pipeline,Jenkins Plugins,Owasp,我正试图将Jenkins CI管道生成的依赖项检查报告分解为多个报告(每个模块一个),因为有一个巨大的报告可能会变得相当大且难以阅读。这是我迄今为止完成此任务的代码: if(fileExists('pom.xml')) { def pom = readMavenPom file: 'pom.xml' pom.modules.each { dependencyCheck additionalArguments: "--scan ./${it} --format CSV --o
if(fileExists('pom.xml')) {
def pom = readMavenPom file: 'pom.xml'
pom.modules.each {
dependencyCheck additionalArguments: "--scan ./${it} --format CSV --out owasp-reports/${it}-dependency-check-report.csv", odcInstallation: "${env.DEPENDENCY_CHECK}"
dependencyCheck additionalArguments: "--scan ./${it} --format JSON --out owasp-reports/${it}-dependency-check-report.json", odcInstallation: "${env.DEPENDENCY_CHECK}"
dependencyCheck additionalArguments: "--scan ./${it} --format HTML --out owasp-reports/${it}-dependency-check-report.html", odcInstallation: "${env.DEPENDENCY_CHECK}"
}
我正在使用适当的名称生成文件,但没有扫描依赖项。但是,这会生成一个包含所有子模块的大型报告
dependencyCheck additionalArguments: '--scan ./ --format XML --format JSON --format HTML --format CSV --out owasp-reports', odcInstallation: "${env.DEPENDENCY_CHECK}"
如果您有任何建议,我们将不胜感激。对于其他任何人来说,这可能会有所帮助,这就是我提出的解决方案:
if(fileExists('pom.xml')) {
def pom = readMavenPom file: 'pom.xml'
pom.modules.each {
dir("${it}"){
sh "mvn org.owasp:dependency-check-maven:aggregate"
sh "mv target/dependency-check-report.html ../owasp-reports/${it}-dependency-check-report.html"
}
}
}
显然,使用Jenkins插件调用的问题在于Jenkins插件包装了CLI命令,这些命令无法识别pom文件。资料来源: