48-Jenkins-Pipeline中使用异常捕获
Posted 爱学习de测试小白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了48-Jenkins-Pipeline中使用异常捕获相关的知识,希望对你有一定的参考价值。
Pipeline中使用异常捕获
前言
- 一般在Pipeline中一个steps失败,后续流程都会跳过,为了处理某些异常场景不影响后续流程,本篇来学习在流水线中使用异常捕获
try-catch-finally
pipeline
agent
node
label 'mcp5.0'
stages
stage('pull code')
steps
script
try
println 'start pull code'
println 666/0
catch (exc)
println "$exc"
currentBuild.result = "UNSTABLE"
finally
println "alway run"
stage('test')
steps
println 'start test'
post
always
script
println 'post always'
println currentBuild.currentResult
catchError
pipeline
agent any
stages
stage('pull code')
steps
// buildResult 设置构建结果 catchInterruptions 暂时不清楚作用 stageResult 设置stage结果 message 错误提示信息
catchError(buildResult: 'SUCCESS', catchInterruptions: true, stageResult: 'UNSTABLE',message :'pull code error')
println 'start pull code'
println 666/0
println 'alway run' //相当于相当于try-catch-finally中finally中的内容
stage('test')
steps
println 'start test'
post
always
script
println 'post always'
println currentBuild.currentResult
以上是关于48-Jenkins-Pipeline中使用异常捕获的主要内容,如果未能解决你的问题,请参考以下文章
Java中有多个异常, 如何确定捕获顺序(多个catch),先从上到下执行,判断异常的大小,如果包含捕到异常,就进入这个catch,后面的就不再执行