You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure经典构建流水线Veracode扫描无法过滤上传文件求助

Azure Classic流水线Veracode扫描排除Code Coverage报告的解决方案

方法1:前置过滤工件目录

在Veracode扫描任务前添加命令行任务,将需要扫描的文件复制到临时目录,排除Code Coverage相关文件:

  • 假设原始工件目录为$(Build.ArtifactStagingDirectory),要排除的是coverage-report.html文件或coverage文件夹
  • Windows环境命令示例:
    mkdir $(Build.ArtifactStagingDirectory)\veracode-scan-files
    xcopy /s /e /exclude:exclude-list.txt $(Build.ArtifactStagingDirectory)\* $(Build.ArtifactStagingDirectory)\veracode-scan-files\
    
    新建exclude-list.txt文件,写入需要排除的内容:
    coverage-report.html
    coverage\
    
  • Linux/macOS环境命令示例:
    mkdir -p $(Build.ArtifactStagingDirectory)/veracode-scan-files
    rsync -av --exclude='coverage-report.html' --exclude='coverage/' $(Build.ArtifactStagingDirectory)/ $(Build.ArtifactStagingDirectory)/veracode-scan-files/
    

完成后,将Veracode任务的应用程序文件路径指向这个临时目录即可。

方法2:配置Veracode任务的排除规则

如果使用Veracode官方Azure DevOps任务(Veracode Upload and Scan),直接在任务配置中设置排除规则:

  • 找到任务的"Application Files"区域,填写File Exclusion Patterns(文件排除模式)
  • 使用glob语法添加规则:
    • 排除单个报告文件:**/coverage-report.html
    • 排除整个报告文件夹:**/coverage/**

方法3:调整工件生成逻辑

如果Code Coverage报告是构建过程中生成的,可直接避免将其纳入工件目录:

  • 在生成报告的任务后添加命令行任务,将报告移至非工件目录(如$(Build.BinariesDirectory),默认不会被作为工件上传):
    move $(Build.ArtifactStagingDirectory)\coverage-report.html $(Build.BinariesDirectory)\
    

内容的提问来源于stack exchange,提问作者Srivatsa Marichi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 02:36:00