-
Type:
Bug
-
Resolution: Unresolved
-
Priority:
Minor
-
Component/s: workflow-durable-task-step-plugin
-
None
-
Environment:Jenkins 2.103 (.war) with Pipeline 2.5 on Fedora 26, Oracle JDK 1.8.0_121.
When a timeout interrupts a shell script (bash in my case), the build result is set to failure instead of the expected aborted.
Example (also true for scripted pipelines):
pipeline {
agent any
options {
timeout(time: 3, unit: 'SECONDS')
}
stages{
stage('run') {
steps {
sh 'sleep 5'
// working:
// sleep(time: 5, unit: 'SECONDS')
}
}
}
}
Output:
Started by user admin
Running in Durability level: MAX_SURVIVABILITY
[Pipeline] node
Running on Jenkins in /mnt/data/jenkins-weekly/jenkins_home/workspace/timeout-pipeline
[Pipeline] {
[Pipeline] timeout
Timeout set to expire in 3 sec
[Pipeline] {
[Pipeline] stage
[Pipeline] { (run)
[Pipeline] sh
[timeout-pipeline] Running shell script
+ sleep 5
Cancelling nested steps due to timeout
Sending interrupt signal to process
sh: line 1: 32445 Terminated JENKINS_SERVER_COOKIE=$jsc '/mnt/data/jenkins-weekly/jenkins_home/workspace/timeout-pipeline@tmp/durable-7559496c/script.sh' > '/mnt/data/jenkins-weekly/jenkins_home/workspace/timeout-pipeline@tmp/durable-7559496c/jenkins-log.txt' 2>&1
[Pipeline] }
[Pipeline] // stage
[Pipeline] }
[Pipeline] // timeout
[Pipeline] }
[Pipeline] // node
[Pipeline] End of Pipeline
ERROR: script returned exit code 143
Finished: FAILURE