如何使用Groovy在Jenkins中获得宝贵的构建步骤?

时间:2017-06-12 07:48:12

标签: shell jenkins groovy

是否有一个采用上一个构建步骤返回代码的示例脚本?我想知道如何用Groovy做到这一点。上一个构建步骤远程运行SSH命令并返回特定的返回码。如何使用Groovy在下一个构建步骤中阅读此返回代码?

1 个答案:

答案 0 :(得分:1)

如果从Jenkins UI中的管道作业转到管道片段生成器(单击左侧的“管道语法”),它将为您提供每个步骤的语法,如“sh”。对于shell命令,您可以像这样执行:

pipeline {

    // Assumes you have Linux agents..
    agent any

    stages{
        stage('Test') {
            steps {
                script {

                    def result = sh returnStatus: true, script: 'ls -a'

                    echo "Return code of shell script: ${result}"
                }
            }
        }
    }
}

我不知道是否有任何方法可以获得上一步,如果你没有得到这样的结果,但每一步都是如此。

如果失败,当像这样显式请求returnStatus时,不会抛出异常,因此您需要处理返回状态并使用error('message ..')显式失败作业,如果这是什么必需的。