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

Azure Pipelines能否将作业队列处理从FIFO改为LIFO?

Azure Pipelines 实现优先运行最新作业的方案

Azure Pipelines 本身没有直接内置的选项可将作业队列从 FIFO(先进先出)切换为 LIFO(后进先出),但可以通过以下几种自定义方式实现类似效果,优先处理 main 分支的最新作业:

  • 启用旧作业自动取消
    在 Pipeline 的 YAML 配置中添加 cancelPreviousBuilds: true,当 main 分支有新提交触发 Pipeline 时,系统会自动取消同一分支下仍在队列中或正在运行的旧作业,让最新作业直接占用资源开始执行。这是最贴合你需求的方案,示例配置如下:

    trigger:
      branches:
        include:
          - main
    pr: none
    
    jobs:
    - job: MainBranchBuild
      cancelPreviousBuilds: true
      steps:
        # 此处添加你的构建、测试步骤
    
  • 设置 Pipeline 优先级
    如果使用自托管代理池,可在 Pipeline 编辑页面的「选项」中,将该 Pipeline 的代理池优先级设置为「高」。当队列中存在多个作业时,高优先级的 main 分支作业会被优先调度执行,虽不是严格的 LIFO,但能确保核心分支作业获得资源倾斜。

  • 自定义队列管理脚本
    通过 Azure DevOps REST API 编写脚本,实现对队列作业的主动管理:当检测到 main 分支有新作业进入队列时,自动取消同分支下的旧队列作业。这种方式灵活性更高,但需要额外维护脚本逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 16:28:10