我正在使用azure-devops管道,但是在设置构建名称时遇到了问题。
这是一个普通的构建定义。
pool:
vmImage: 'VS2017-Win2016'
name: myBuildName
steps:
- task: NuGetToolInstaller@0
- task: NuGetCommand@2
inputs:
restoreSolution: '$(solution)'
Run Code Online (Sandbox Code Playgroud)
我想做的是通过条件检查设置名称。如果(某物)则X否则Y
我检查了条件文件,但是没有运气。
这是我想做的,但是显然行不通
# if ReleaseNumber var exists
if ($(ReleaseNumber))
name: $(ReleaseNumber).$(Build.BuildId)
else
name: $(date:yyyyMMdd)$(rev:.r)
Run Code Online (Sandbox Code Playgroud)
Azure DevOps YAML 不支持您尝试执行的值中的条件。
您查看的条件文档用于作业/任务执行,您可以指定何时使用自定义条件执行任务。
在解决方法中,您可以添加一个 PowerShell 任务,该任务将根据您的条件更新构建名称。
例如,保留$(date:yyyyMMdd)$(rev:.r)
名称并在构建期间运行此脚本:
if ($env:ReleaseNumber){
Write-Host "##vso[build.updatebuildnumber]$env:ReleaseNumber.$env:Build_BuildId"
}
else{
Write-Host "Release Number not exist, build name not changed"
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
711 次 |
最近记录: |