jenkins - 在 CheckMarx 扫描中排除文件夹
问题描述
我正在我们的代码存储库中实施 Checkmarx 扫描。我正在使用 Jenkins 和 CheckMarx 插件来完成这项任务。我想从扫描中排除一些文件夹;引用 Jenkins插件文档似乎我所要做的就是在“excludeFolders”字段中添加文件夹名称。但是,这似乎不起作用,或者我没有正确输入值。
我试过'/test','test/','!/test/ /*' 但没有任何作用,并且该文件夹在上传到我们的 CheckMarx 服务器之前仍然被注册和压缩。
以下是我的管道中的内容:
stage("Running CheckMarks for Layer"){
steps{
script{
def layer_dir = readFile file: 'layer-list'
def layer_list = layer_dir.split('\\r?\\n')
println (layer_list)
layer_list.each { layer ->
print (layer)
dir("${env.WORKSPACE}/layers/layer-name/$layer"){
step([
$class: 'CxScanBuilder',
comment: 'Layer scanning',
credentialsId: 'XXXX',
excludeFolders: 'test',
exclusionsSetting: 'global',
failBuildOnNewResults: false,
failBuildOnNewSeverity: 'MEDIUM',
filterPattern: '''!**/_cvs/**/*, !Checkmarx/Reports/*.*''',
fullScanCycle: 10,
incremental: true,
fullScansScheduled: true,
generatePdfReport: true,
preset: '36',
teamPath: "\\path\\to\\codebase",
projectName: "$layer",
sastEnabled: true,
sourceEncoding: '1',
vulnerabilityThresholdResult: 'FAILURE',
waitForResultsEnabled: true
])
}
}
}
}
}
关于如何排除“测试”文件夹的任何建议?
解决方案
您应该将 excludesSetting 更改为'job'而不是'global',我们无法覆盖全局配置。
然后您可以在filterPattern中添加更多过滤器。
推荐阅读
- ansible - ansible 无法找到或访问脚本
- html - 在特定的 div 中加载外部 css 文件
- android - 在 Kotlin 中从 Fragment 声明 Intent 时出错:
- excel - 剪切并粘贴一组行以允许新的空白行
- python - 我可以在单个 for 循环上指定嵌套字典的多个键而不是使用嵌套 for 循环吗?
- java - 如何在 Java 中正确实现泛型接口
- sas - 使用 SAS 的条件转置
- python - 字符串的二进制表示
- python - 在 Python 中,更改继承行为而不重写父类
- c++ - 在 Windows 10 和 Visual Studio Community 2019 下使用带有 Bazel 的 boost