在bash步骤中中止Jenkins构建

时间:2018-10-08 21:58:05

标签: bash jenkins

如果服务器执行ping操作,如何立即使构建失败/中止,如果不进行,则如何继续构建。我有以下bash步骤,但现在可以正常使用。

#!/bin/sh
  if
    ping -c 1 $VmIP &> /dev/null
  then
    echo "--------HOST pinging aborting the build----------"
    exit 1
  else 
    echo "Not pinging, proceed"
  fi

即使服务器未ping通,它也会退出构建。但是在服务器ping时应该中止

1 个答案:

答案 0 :(得分:0)

在bash脚本中,您只需运行检查,然后设置退出状态即可。

使用Jenkins管道,您可以获取bash脚本的退出状态,然后相应地设置currentBuild.result的值:

stage ('Ping') {
    steps {
        script {
            exit_status = sh(script: "<RUN YOUR SCRIPT>", returnStatus: true)
            if (exitStatus != 0) {
                currentBuild.result = 'FAILURE'
            }
        }
    }
}

currentBuild.result = 'FAILURE'将中止其余阶段。