【发布时间】:2018-11-02 04:37:05
【问题描述】:
我目前正在将我们的 XAML 构建定义升级到新的构建系统。已经解决了一些错误,但现在我无法再判断可能出了什么问题。我们在大部分构建过程中使用 PowerShell 脚本,尽管服务器上提供了所有必需的数据,但在运行构建时出现以下错误:
有谁知道是什么导致了这个错误?或者至少我应该检查哪里?
提前致谢。
编辑:
该脚本准备了外部工具无法完成的构建配置,并且特定于我们的项目。错误发生在$teamProjectCollection =...行上
Function Get-BuildNumberFromUri() {
<#
.SYNOPSIS
Reads the build number from the current TFS build ($Env:BUILD_BUILDURI)
.DESCRIPTION
Reads the build number from the current TFS build ($Env:BUILD_BUILDURI)
.NOTES
May fail if $env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI or $env:BUILD_BUILDURI
are not set
#>
[String] $CollectionUrl = "$env:SYSTEM_TEAMFOUNDATIONCOLLECTIONURI"
[String] $BuildUrl = "$env:BUILD_BUILDURI"
if (-not $CollectionUrl -or -not $BuildUrl) {
return "0"
}
[void[System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Client")
[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.Build.Client")
[void][System.Reflection.Assembly]::LoadWithPartialName("Microsoft.TeamFoundation.VersionControl.Client")
$teamProjectCollection = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($CollectionUrl)
$buildServer = $teamProjectCollection.GetService([Microsoft.TeamFoundation.Build.Client.IBuildServer])
$buildDetail = $buildServer.GetBuild($BuildUrl)
$buildNumber = $buildDetail.BuildNumber
return $buildNumber
}
【问题讨论】:
-
在构建过程的哪个阶段?脚本在做什么?这是您的脚本中的错误; no on 可以帮你在不看脚本的情况下进行故障排除。
-
@DanielMann 从脚本中添加了一个 sn-p。它发生在构建任务开始之前,因为这个脚本是在预构建任务中执行的。
-
您可以更新内部版本号。有一个特殊的日志注释可以实现这一点。
标签: tfs azure-devops tfsbuild tfvc