如果/Else或不包含在Azure DevOps YAML动态设置构建配置?



如果可能的话,我想要一个yaml。然而,情况决定了这个单一的yaml将对某些分支(开发/发布)具有自动触发器,但仍然可以由qa希望测试的任何其他分支手动构建(例如,他们想要测试一个特性分支,他们可以使用这个yaml构建它)。

我需要动态设置buildconfig属性。

我:

trigger:
branches:
include:
- develop
- release/*
- Release/*
pool:
name: 'my-agent'
variables:
isRelease: $[contains(variables['Build.SourceBranch'], 'release')]
if {{$(isRelease)}}:
buildConfiguration: 'Release'

//如果不释放然后设置构建配置为'Debug',但我正在努力与语法。我找不到一个not操作员工作良好,或notIn…有人能帮帮忙吗?

我将否定if条件以获得"调试";条件。此外,没有else,所以你必须堆叠它们:

${{ if variables.isRelease }}:
buildConfiguration: 'Release'
${{ if not(variables.isRelease) }}:
buildConfiguration: 'NotRelease'

现在我们有了if else表达式,我们可以这样使用它:

${{ if variables.isRelease }}:
buildConfiguration: 'Release'
${{ else }}:
buildConfiguration: 'NotRelease'

最新更新