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

如何自定义VSTS Build definitions构建完成摘要?

在Azure DevOps(原VSTS)构建摘要中添加自定义内容的方法

当然有办法!在Azure DevOps(原VSTS)里,你可以通过几种方式自定义构建摘要,下面是最常用的几个方案:

1. 使用社区/官方扩展(最直观的可视化方案)

Azure DevOps Marketplace上有不少专门用于自定义构建摘要的扩展,比如Custom Build Summary这类工具。安装扩展后,你可以直接在构建定义中添加对应的任务,通过可视化界面配置要展示的内容——支持纯文本、Markdown格式的文本、链接,甚至简单的HTML片段(注意合规性,避免不安全内容)。

这类扩展的优势是操作简单,不需要写代码,适合快速实现自定义摘要需求。

2. 用原生Logging Commands(无插件轻量方案)

如果你不想依赖第三方扩展,Azure DevOps原生支持通过Logging Commands向构建摘要添加自定义内容。核心思路是在构建任务中生成一个包含自定义内容的文件(比如Markdown格式),然后用命令将其作为附件上传到摘要中。

举个PowerShell任务的例子:

# 生成自定义摘要内容,这里可以结合构建变量动态生成
$customSummary = @"
### 本次构建自定义信息
- 构建编号:$env:BUILD_BUILDNUMBER
- 代码分支:$env:BUILD_SOURCEBRANCHNAME
- 已完成的测试用例数:120
- 测试通过率:98%
"@

# 将内容保存到临时文件
$summaryFilePath = Join-Path $env:AGENT_TEMPDIRECTORY "build-custom-summary.md"
Set-Content -Path $summaryFilePath -Value $customSummary -Encoding UTF8

# 上传到构建摘要
Write-Host "##vso[task.addattachment type=Distributedtask.Core.Summary;name=我的自定义构建摘要;]$summaryFilePath"

执行这个任务后,你的构建摘要页就会多出一个名为「我的自定义构建摘要」的板块,显示你定义的内容。

如果是Bash任务,逻辑类似:

# 生成摘要内容
cat > $AGENT_TEMPDIRECTORY/custom-summary.md << EOF
### 自定义构建摘要
- 构建版本:$BUILD_BUILDNUMBER
- 触发方式:$BUILD_REASON
EOF

# 上传到摘要
echo "##vso[task.addattachment type=Distributedtask.Core.Summary;name=Bash自定义摘要;]$AGENT_TEMPDIRECTORY/custom-summary.md"

3. 通过Azure DevOps REST API(进阶自动化方案)

如果你的自定义内容需要从外部系统获取(比如测试报告、部署状态),可以在构建完成后调用Azure DevOps的REST API,将自定义内容添加为构建的注释或自定义数据。

比如调用Builds - Update API,在构建的customAttributes中添加自定义字段,或者直接添加构建注释。不过这个方案需要编写脚本调用API,适合复杂的自动化场景。

注意事项

  • 如果你使用HTML格式的内容,要确保内容符合Azure DevOps的安全规范,避免注入攻击;
  • Logging Commands的方式支持Markdown语法,所以用Markdown写内容会让摘要排版更美观;
  • 扩展方案通常会提供更多可视化选项,比如图表、进度条等,适合需要更丰富展示效果的场景。

内容的提问来源于stack exchange,提问作者Ramakrishna Yelduti

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:32:06