TFS 2015 构建定义 - 用变量覆盖构建号
TFS 2015 Build definition - override Build number with variables
我们在日常敏捷冲刺中使用很好的 $(date:yyyy.MM.dd)$(rev:.r) 内部版本号格式。但是,该版本必须使用更简单的 1.0.0.rev 架构进行编号。
理想情况下,我想将内部版本号作为变量提供,它会在 "queue build" 对话框中自动展开,在那里可以被覆盖。怎么做到的?
我尝试将 $(date:yyyy.MM.dd)$(rev:.r) 格式移动到一个变量,并在常规选项卡中使用该变量,但出现错误 400。
你可以直接使用Environment variables比如Build.BuildNumber
/BUILD_BUILDNUMBER
使用这个就等于完成构建的名称。您可以在 General tab.
上指定生成此值的内部版本号格式
如果您只想在 TFS Build vNext 中生成自定义内部版本号,例如 1.0.0.rev 架构。你可以看看下面的博客:
这个很简单。
1) 只需像这样创建一个 Powershell 脚本
$FinalVersion=Some-Function-To-Calculate-Version
$BuildDefName = $Env:BUILD_DEFINITIONNAME
Write-Host "##vso[build.updatebuildnumber]$($BuildDefName)-$($FinalVersion)"
2) 在您的 vNext 构建定义中,"Build number format" 只需将其设置为任何值。没关系,因为内部版本号将被覆盖。
3) 在相同的 vNext 构建定义步骤中,将第一步添加为 Powershell 步骤,并将步骤 1 中的脚本设置为执行。如果您想传递变量以计算内部版本号,您可以稍后进行自定义。
4) 排队构建并查看结果。
我们在日常敏捷冲刺中使用很好的 $(date:yyyy.MM.dd)$(rev:.r) 内部版本号格式。但是,该版本必须使用更简单的 1.0.0.rev 架构进行编号。
理想情况下,我想将内部版本号作为变量提供,它会在 "queue build" 对话框中自动展开,在那里可以被覆盖。怎么做到的?
我尝试将 $(date:yyyy.MM.dd)$(rev:.r) 格式移动到一个变量,并在常规选项卡中使用该变量,但出现错误 400。
你可以直接使用Environment variables比如Build.BuildNumber
/BUILD_BUILDNUMBER
使用这个就等于完成构建的名称。您可以在 General tab.
上指定生成此值的内部版本号格式如果您只想在 TFS Build vNext 中生成自定义内部版本号,例如 1.0.0.rev 架构。你可以看看下面的博客:
这个很简单。
1) 只需像这样创建一个 Powershell 脚本
$FinalVersion=Some-Function-To-Calculate-Version
$BuildDefName = $Env:BUILD_DEFINITIONNAME
Write-Host "##vso[build.updatebuildnumber]$($BuildDefName)-$($FinalVersion)"
2) 在您的 vNext 构建定义中,"Build number format" 只需将其设置为任何值。没关系,因为内部版本号将被覆盖。
3) 在相同的 vNext 构建定义步骤中,将第一步添加为 Powershell 步骤,并将步骤 1 中的脚本设置为执行。如果您想传递变量以计算内部版本号,您可以稍后进行自定义。
4) 排队构建并查看结果。