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

如何通过Groovy Postbuild将Jenkins构建任务排至队列顶部

实现Jenkins构建任务队列置顶(Groovy Postbuild版)

我来帮你把Build X移到队列最顶端!你已经完成了调度任务的第一步,接下来只需要借助Jenkins原生的队列操作方法就能搞定,下面是补全后的完整代码和细节说明:

// 替换成你的目标任务全名,若任务在文件夹里可写成"Folder/Build X"
def targetJob = Jenkins.get().getItemByFullName("Build X")

// 先校验任务是否存在
if (!targetJob) {
    manager.listener.logger.println "Error: Target job 'Build X' not found!"
    return
}

// 调度任务到等待队列
def waitingQueueItem = Jenkins.get().getQueue().schedule(targetJob, 0)
if (waitingQueueItem == null) {
    manager.listener.logger.println "Error scheduling ${targetJob.name} to queue!"
} else {
    // 核心操作:将任务移到队列最前端
    Jenkins.get().getQueue().moveToFront(waitingQueueItem)
    manager.listener.logger.println "Success! ${targetJob.name} has been moved to the top of the build queue."
}

关键细节拆解:

  • 精准定位任务:用getItemByFullName可以直接获取到嵌套在文件夹中的任务,比单纯的getItem更灵活
  • 原生置顶方法:Jenkins的Queue类自带moveToFront方法,不需要手动调整优先级或修改队列排序逻辑,简单高效
  • 容错处理:添加了任务存在性校验和调度失败的日志,方便你在构建控制台排查问题

权限提示:

确保执行这段Groovy脚本的账号拥有Jenkins的Queue/Manage权限,否则会抛出权限不足的异常,无法完成置顶操作

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.25 03:26:01