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

如何将Azure DevOps代理文件系统中的HTML报告添加为发布管道日志附件

Azure DevOps 发布管道扫描报告获取方案

完全可以实现该需求,无需手动登录代理机器拉取文件,通过 Azure DevOps 内置能力即可将本地生成的扫描报告上传为管道日志附件,直接在发布记录中访问。

具体实现步骤

  • 在扫描任务的下游新增上传附件逻辑,可选择内置的「发布构建附件」任务,或者直接通过 Azure DevOps 内置日志命令完成上传,无需额外安装插件。
  • 配置上传规则时,需要准确填写扫描任务生成的报告路径,路径可使用预设变量拼接,比如常见的扫描输出路径为 $(Agent.WorkFolder)/_scanOutput/report.html,需和你扫描任务中配置的输出路径保持一致。
  • 如果选择日志命令方式,直接添加一个命令行任务,执行对应脚本即可:
    • Linux/macOS 代理执行:echo '##vso[task.addattachment type=Distributedtask.Core.Summary;name=安全扫描结果报告;]$(Agent.WorkFolder)/_scanOutput/report.html'
    • Windows 代理执行:Write-Host "##vso[task.addattachment type=Distributedtask.Core.Summary;name=安全扫描结果报告;]$(Agent.WorkFolder)\_scanOutput\report.html"

提示:如果扫描报告包含独立的 css、js 等依赖资源,建议先将所有报告相关文件打包为 zip 包后再上传,避免资源缺失导致报告无法正常渲染。

如果需要更方便的访问入口,还可以在上传完成后新增「发布摘要」任务,把报告的访问链接写入发布记录的首页摘要,后续打开对应发布版本就能直接点击访问报告。

常见问题排查

  • 上传后找不到附件:可在扫描任务后新增一个文件列表查看任务,Linux 代理执行 ls $(Agent.WorkFolder)/_scanOutput,Windows 代理执行 dir $(Agent.WorkFolder)\_scanOutput,确认报告文件确实生成在对应路径下。
  • 在线打开报告显示空白:部分扫描工具生成的是多文件报告,仅上传 html 会丢失样式和脚本,建议打包为 zip 后下载到本地解压查看,也可以配置扫描工具生成内嵌所有资源的单文件 html 报告。

内容的提问来源于stack exchange,提问作者Sneha Dominic

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 03:06:07