如何重新触发因超时而失败的 Jenkins 作业?

时间:2021-06-10 10:28:04

标签: jenkins jenkins-pipeline jenkins-plugins

如何使用命令行重新触发 jenkins 作业,该命令行自上一小时/周以来在控制台消息中具有 Timeout

这些是我的一些 Jenkins 工作的 Jenkins 控制台输出

Timeout has been exceeded
Finished: ABORTED

原始管道

stage('Test') {
    options {
        timeout(time: 45, unit: 'MINUTES')
    }
    steps {
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_1; /home/jenkins/tests/test_1.sh'
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_2; /home/jenkins/tests/test_2.sh'
    }
}

修改重试

stage('Test') {
    options {
        timeout(time: 45, unit: 'MINUTES')
    }
    try {
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_1; /home/jenkins/tests/test_1.sh'
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_2; /home/jenkins/tests/test_2.sh'
    } catch(error) {
      retry(2) {
        input "Timeout has been exceeded"
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_1; /home/jenkins/tests/test_1.sh'
        sh label: '', script: 'cd ${WORKSPACE}/logs/test_2; /home/jenkins/tests/test_2.sh'
}

1 个答案:

答案 0 :(得分:0)

您可以使用 retry 指令来实现相同的目的。

相关问题