Конечно, вы можете создавать вложенные этапы и определять параметр timeout
для родительского этапа:
pipeline {
agent any
stages{
stage('Stage A') {
options{
timeout( time: 10, unit: 'SECONDS' )
}
stages {
stage('Stage A1') {
steps {
sleep( time: 4, unit: 'SECONDS' )
}
}
stage('Stage A2') {
steps {
sleep( time: 4, unit: 'SECONDS' )
}
}
stage('Stage A3') {
steps {
sleep( time: 4, unit: 'SECONDS' )
}
}
}
}
}
}
Этап A3 никогда не будет выполнен из-за истечения времени ожидания родительского элемента. Он будет помечен как «прерванный»: