【发布时间】:2020-01-22 16:21:38
【问题描述】:
在 UI(经典)发布管道中,有 $(Release.EnvironmentName) 等内置变量,这些变量会根据您所处的阶段而变化。
使用 YAML 管道时是否有等价物?
在 classis 模式中,如果有链接,变量组也会自动作用于舞台,这在 YAML 中是否也可以以某种方式实现?
【问题讨论】:
标签: azure-devops
在 UI(经典)发布管道中,有 $(Release.EnvironmentName) 等内置变量,这些变量会根据您所处的阶段而变化。
使用 YAML 管道时是否有等价物?
在 classis 模式中,如果有链接,变量组也会自动作用于舞台,这在 YAML 中是否也可以以某种方式实现?
【问题讨论】:
标签: azure-devops
答案是肯定的。 Yaml 管道中预定义变量的用法与经典管道相同。 $(Release.EnvironmentName) 用于 classic release pipeline。您可以在yaml管道中引用变量$(System.StageName)或$(Environment.Name)。
单击链接可查找更多预定义build variables。检查here 以了解有关 yaml 管道中变量的更多信息。
适用于在经典发布管道中暂存的变量组
在 Yaml 管道中是可能的。在 yaml 中,您可以通过在 yaml 中的作业或阶段下定义变量来确定作业或阶段中的变量组。下面的例子。
1,范围为阶段构建的变量:
stages:
- stage: Build
variables:
- group: SourceMessage
jobs:
- job: A
- stage: release
jobs:
- job: B
2、作用于所有阶段的变量:
stages:
variables:
- group: SourceMessage
- stage: Build
jobs:
- job: A
- stage: release
jobs:
- job: B
3、作用域为作业 A 的变量:
stages:
- stage: Build
jobs:
- job: A
variables:
- group: SourceMessage
- stage: release
jobs:
- job: B
【讨论】:
- stage: Deploy_Development jobs: - deployment: Development_Deploy environment: name: Development resourceType: VirtualMachine tags: dev strategy: runOnce: deploy: steps: - powershell: | Write-Host '$(Release.EnvironmentName)'
$(Environment.Name)映射到environment:键,$(System.StageName)映射到stage:键