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

如何强制Jenkins等待队列中的第二个任务在首个任务完成后执行?

Jenkins任务排队执行及关联邮件问题解决

强制任务排队执行的两种方法

要让新触发的任务自动进入等待队列,待前一个任务完成后再执行,可通过以下方式实现:

1. Pipeline代码中添加并发限制

在Pipeline的最外层加入options块,配置disableConcurrentBuilds()即可禁止并发构建,新任务会自动排队:

pipeline { 
    agent any 
    options {
        disableConcurrentBuilds() // 核心配置:禁止同一任务并发运行
    }
    // 后续stage、post等配置保持不变
    stages {
      stage('Set-Up') {
         script { ... }
      }
      
      stage('Jobs') {
         parallel {
            stage('job-1') { steps { ... } }
            stage('job-2') { steps { ... } }
        }
      }
   }
   
   post {
      always {
         // 生成Allure报告逻辑
         ...
         emailext(
             body: '''${SCRIPT, template="allure-report.groovy"}''',
             subject: "Jenkins Job '${env.JOB_NAME}--${env.BUILD_NUMBER}'  ${currentBuild.currentResult}",
             to: params.receiver, 
             mimeType: 'text/html')
      }
   }
}

2. 任务配置页面可视化设置

无需修改代码,直接在任务配置页操作:

  • 进入目标任务的「配置」页面
  • 找到「高级项目选项」(部分版本在「构建触发器」区域)
  • 勾选「禁止并发构建」选项,保存后生效

附带解决邮件模板缺失错误

失败任务邮件提示Groovy Template file [allure-report.groovy] was not found,原因是构建失败时Allure报告未生成,或模板文件确实不存在。可按以下处理:

  • 检查Jenkins服务器的$JENKINS_HOME/email-templates目录,确认allure-report.groovy是否存在,缺失则补充该模板文件
  • 修改post块逻辑,区分构建状态发送不同邮件,避免失败时触发模板错误:
post {
    success {
        // 仅构建成功时发送带Allure报告的邮件
        emailext(
            body: '''${SCRIPT, template="allure-report.groovy"}''',
            subject: "Jenkins Job '${env.JOB_NAME}--${env.BUILD_NUMBER}' 构建成功",
            to: params.receiver, 
            mimeType: 'text/html')
    }
    failure {
        // 构建失败时发送简单通知
        emailext(
            body: "任务构建失败,编号:${env.BUILD_NUMBER},日志地址:${env.BUILD_URL}",
            subject: "Jenkins Job '${env.JOB_NAME}--${env.BUILD_NUMBER}' 构建失败",
            to: params.receiver, 
            mimeType: 'text/plain')
    }
    always {
        // 保留其他需要始终执行的逻辑(如生成报告)
        ...
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 11:06:19