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