无法在 YAML azure devops 管道中的环境标记下使用预定义变量

问题描述 投票:0回答:1

下面是我的 YAML 代码,我尝试在环境标签部分下使用 yaml 预定义变量 $(Build.BuildNumber),但它根本不起作用。它看起来更像是环境标签块中的限制,我认为需要在编译时提供该值。

stages:
- stage: Deploy
  displayName: 'Test Deploy'
  jobs:
  - deployment: Test_job
    environment:
      name: myEnvironment
      resourceType: VirtualMachine
      tags: $(Build.BuildNumber) 
    strategy:
      runOnce:
        deploy:
            steps:
            - task: PowerShell@2
              inputs:
                targetType: 'inline'
                script: Deploy-Steps...

我得到的错误是:

##[错误]在 ID 为 17 的环境中找不到符合指定条件的资源: ResourceId 、 ResourceName 、 ResourceType VirtualMachine、标签 $(Build.BuildNumber)。

azure-devops tfs yaml azure-pipelines azure-pipelines-yaml
1个回答
0
投票

我们应该在环境标签中使用语法

${{}}
进行编译。

示例:

tags: ${{variables['Build.DefinitionName']}}

但是,我们不能使用

$(Build.BuildId)
$(Build.BuildURL)
$(Build.BuildNumber)
,因为它们的值在计算表达式时并未设置。

© www.soinside.com 2019 - 2024. All rights reserved.