【发布时间】:2021-03-17 15:01:22
【问题描述】:
我有以下 yml。我试图做的是根据其他几个变量(version.Major、version.Minor、versionDay 和BuildNumber)创建一个版本号。但是设置变量 powershell 任务不会覆盖 versionday 的初始值,因此下面我的 echo 脚本中 versionNumber 的输出将类似于:1.0.set below.2021037.6 有什么想法吗?我没有看到语法问题?
trigger:
branches:
include:
- develop,
- sprint/*
- Sprint/*
pool:
name: 'MyCustomAgent'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
version.Major: '1'
version.Minor: '0',
versionDay: 'set below'
versionNumber: 'set dynamically'
steps:
- script: |
echo: $(Build.SourceBranch)
- powershell: |
if ("$(Build.SourceBranch)".Contains('sprint')) {
Write-Host "##vso[task.setvariable variable=buildConfiguration;]Release"
[string] $currentMonthDay= (Get-Date -Format 'MMdd')
Write-Host "##vso[task.setvariable variable=versionDay]$currentMonthDay"
Write-Host "##vso[task.setvariable variable=versionNumber]$(version.Major).$(version.Minor).$(versionDay)"
} else {
Write-Host "##vso[task.setvariable variable=buildConfiguration;]Debug"
[string] $currentMonthDay= (Get-Date -Format 'MMdd')
Write-Host "##vso[task.setvariable variable=versionDay]$currentMonthDay"
Write-Host "##vso[task.setvariable variable=versionNumber]$(version.Major).$(version.Minor).$(versionDay).$(Build.BuildNumber)"
}
- script: |
echo building configuration $(buildConfiguration)
echo $(versionDay)
echo $(versionNumber)
【问题讨论】:
标签: azure powershell azure-devops yaml