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

Azure Pipeline发布Black Duck诊断文件Artifact遇时间戳文件名问题

解决方案

方法1:通过脚本捕获文件名并设置流水线变量

由于VS 2022 Agent为Windows环境,在Black Duck Detect扫描任务之后添加PowerShell任务,定位带时间戳的诊断zip文件并将路径存入流水线变量:

# 根据实际生成路径调整Path参数,示例为当前目录
$diagnosticZip = Get-ChildItem -Path .\ -Filter "detect-run-*.zip" | Select-Object -First 1 -ExpandProperty FullName
# 将文件路径设置为流水线变量,供后续任务调用
Write-Host "##vso[task.setvariable variable=DetectDiagnosticZip]$diagnosticZip"

接着配置Publish Artifact任务:

  • Path to publish:填入$(DetectDiagnosticZip)
  • Artifact name:设置为固定字符串(比如BlackDuck_Diagnostic_Files),避免使用通配符或特殊字符

方法2:直接使用通配符指定发布路径(简化版)

如果确认扫描只会生成一个符合detect-run-*.zip格式的文件,可跳过脚本步骤,直接在Publish Artifact任务的Path to publish中填入通配符路径(比如**/detect-run-*.zip,根据实际文件位置调整),Artifact名称仍用固定字符串即可。

关键误区纠正

之前尝试将Artifact名称设为detect*.zip是错误的:

  • Artifact名称是Azure DevOps中工件的标识名称,不允许包含通配符或特殊字符(如*、?等)
  • 通配符应使用在要发布的文件路径(即Path to publish字段),而非Artifact名称

内容的提问来源于stack exchange,提问作者Octavian Epure

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.04 01:52:13