You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Azure DevOps中设置流水线步骤的条件执行?

在Azure DevOps流水线中为步骤添加条件执行逻辑

要让PublishBuildArtifacts@1步骤仅在Python 3.8的矩阵任务里执行,只需给该步骤添加condition属性,通过判断流水线变量python.version的值来控制执行:

修改后的完整test.yaml代码如下:

trigger:
  branches:
    include:
      - main

pool:
  vmImage: windows-latest
strategy:
  matrix:
    Python37:
      python.version: "3.7"
    Python38:
      python.version: "3.8"
    Python39:
      python.version: "3.9"
    Python310:
      python.version: "3.10"
    Python311:
      python.version: "3.11"

steps:
  - task: UsePythonVersion@0
    inputs:
      versionSpec: "$(python.version)"
    displayName: "Use Python $(python.version)"
  - script: python -m pip install nox
    displayName: "Install dependencies"
  - script: nox -s test
    displayName: "Test with pytest"
  - task: PublishBuildArtifacts@1
    displayName: "Publish coverage"
    # 仅当Python版本为3.8时执行此步骤
    condition: eq(variables['python.version'], '3.8')
    inputs:
      pathToPublish: "./htmlcov/"
      artifactName: "coverage"

逻辑说明

  • condition: eq(variables['python.version'], '3.8') 表示只有当当前任务的python.version变量值等于"3.8"时,该步骤才会被执行;其他Python版本的矩阵任务会自动跳过这个发布步骤。
  • 这个条件判断使用了Azure DevOps内置的表达式函数eq(),用于比较两个值是否相等。

内容的提问来源于stack exchange,提问作者Pierrick Rambaud

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 16:03:09