-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
Jenkins 2.263.3 on Debian Buster and opnJdk8
pipeline-basic-steps 2.23
pipeline-model-definition 1.8.3
Whatever the way catchError is configured, a timeout block ends the build as ABORTED if the timeout fires.
Here is a test case job to reproduce this :
@Library("EvlinkCiLib@EVL-1262-ci-install-kw-and-cross-compilation-build-chain-for-lms") _pipeline { agent { label 'buster' } environment { pipeName="TimedOut Job" projectDir='timeout' } stages { stage('timedOut node NOK'){ steps { timeout(time: 10, unit: 'SECONDS') { catchError(catchInterruptions: false,message: 'Cannot contact slave',buildResult: 'SUCCESS', stageResult: 'UNSTABLE') { // This node exists but is not connected node(label: 'rpi') { sh('uname -a') } } } } } stage('timedOut node OK'){ // The node 'buster' is OK steps { catchError(catchInterruptions: false,message: 'Cannot contact slave',buildResult: 'SUCCESS', stageResult: 'UNSTABLE') { timeout(time: 10, unit: 'SECONDS') { node(label: 'buster') { sh('uname -a') } } } } } } }
Experienced the same problem and the only workaround we found was to use explicit try-catch the FlowInterruptedException
Our current Pipeline basic steps version is 969.vc4ec3e4854b_f (confusing version schema change btw.) with Jenkins 2.346.1.