我们正在着手将 Azure Pipelines 从 Classic 迁移到 YAML。基于条件逻辑,多阶段管道是否有可能在阶段列表中显示阶段?
例如,我们有多阶段管道,它们构建然后通过管道阶段部署到一个或多个环境。当构建发生在非主干分支上时,我们根本不希望某些环境可用于部署。我们有这个逻辑工作,但排除的环境阶段仍然出现,例如,在管道运行历史记录中。
我们可以根据条件逻辑让这些阶段完全不出现吗?
我们正在着手将 Azure Pipelines 从 Classic 迁移到 YAML。基于条件逻辑,多阶段管道是否有可能在阶段列表中显示阶段?
例如,我们有多阶段管道,它们构建然后通过管道阶段部署到一个或多个环境。当构建发生在非主干分支上时,我们根本不希望某些环境可用于部署。我们有这个逻辑工作,但排除的环境阶段仍然出现,例如,在管道运行历史记录中。
我们可以根据条件逻辑让这些阶段完全不出现吗?
作为一种解决方法,您可以使用条件插入。例如:
- ${{ if eq(variables['Build.SourceBranchName'], 'main') }}:
- stage: prod
dependsOn: staging
jobs:
- job: deploy_prod
pool:
vmImage: 'Ubuntu 16.04'
steps:
- script: echo Prod