如何请求特定 Azure DevOps 阶段的更改请求 ID

How to ask for change request id for a specific Azure DevOps stage

我正在尝试构建一个多阶段管道以将应用程序部署到 Dev -> QA -> Production,并且我能够使用 Azure DevOps YAML 管道完成所有这些工作。此外,我希望对生产环境的任何部署都需要一个更改请求 ID,基本上是一个文本字符串,来自批准部署到生产环境的人。它不需要对文本字符串的值进行任何验证,除了它不能为空,即必填字段。

我不希望 Dev 或 QA 的任何部署都需要更改请求 ID,只有当部署升级到生产环境时才需要更改请求 ID。

如何使用 Azure DevOps YAML 管道执行此操作?

I do not want any deployment to neither Dev or QA to require that change request id, only when a deployment is promoted to Production environment is a change request id required.

您可以为带有 '' 的阶段添加 condition 以指示不存在或没有价值:

stages:
- stage: Production 
  condition: ne(variables['changeRequestId'], '')
  jobs:
  - job: Production 
    displayName: Production 
    pool:
      vmImage: 'windows-latest'
    steps:
        - script: |
           echo $(changeRequestId)