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

是否可为Azure DevOps流水线的任务或作业配置自动重试机制?

OneBranch DevOps流水线临时失败自动重试配置说明

OneBranch DevOps原生支持任务、作业两个层级的自动重试配置,完全可以覆盖套接字异常、超时这类临时性错误的自动重试场景,无需手动触发作业重试。

1. 任务层级重试(推荐针对依赖还原场景使用)

仅对单个依赖还原任务生效,不会触发其他无关任务重复执行,资源消耗更低,是这类单步骤偶发故障的优先选择。
配置时只需在对应依赖还原任务的YAML属性中添加两个参数即可:

  • retryCountOnTaskFailure:最大重试次数,建议设置2~3次即可,过高的重试次数会无意义拉长流水线运行时长
  • retryIntervalInSeconds:两次重试的间隔时长,针对网络波动类问题建议设置10~30秒,给网络链路恢复预留缓冲时间

配置示例(以NuGet还原任务为例):

- task: NuGetCommand@2
  displayName: 还原项目NuGet依赖
  inputs:
    command: 'restore'
    feedsToUse: 'select'
    vstsFeed: '<你的内部依赖源标识>'
  # 自动重试配置
  retryCountOnTaskFailure: 3
  retryIntervalInSeconds: 15

所有OneBranch支持的内置任务、自定义脚本任务均支持上述两个重试参数

2. 作业层级重试(适合作业多步骤均可能出现临时故障的场景)

如果你的作业内多个步骤(比如NuGet还原、npm包拉取、镜像拉取等)都可能出现临时网络故障,可以直接给整个作业配置全局重试,无需逐个任务添加参数。
配置时在对应作业的YAML属性中添加retryCountOnJobFailure参数即可,示例:

jobs:
- job: BuildService
  displayName: 微服务构建作业
  retryCountOnJobFailure: 2
  steps:
    - task: NuGetCommand@2
      # 任务配置省略
    - task: Npm@1
      # 任务配置省略
    - task: DotNetCoreCLI@2
      # 任务配置省略

作业重试会重新运行该作业下的全部任务,若仅依赖还原步骤偶发故障,不建议使用该配置。

注意:OneBranch的重试逻辑默认只会对可重试错误触发重试,套接字异常、网络超时、依赖源临时不可用这类临时性错误均属于默认可重试范围,不会对代码语法错误、依赖包不存在这类永久性错误做无效重试。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 08:15:02