在宣告式管缐中,我知道我可以尝试/拦截阶段中的错误,并执行管缐的剩馀阶段。但是如果我想要在失败时略过所有后续阶段,除了最后一个阶段-我想要执行的阶段,该怎麽办!
script { try { sh 'do your stuff' } catch (Exception e) { echo 'Exception occurred: ' + e.toString()
hmtdttj41#
你可以使用when表达式来实现这个。
def skipStages = false pipeline { agent any stages { stage('1') { steps { script { echo 'Hello 1' try { error "Something" } catch(e) { skipStages = true } } } } stage('2') { when { expression { !skipStages } } steps { script { echo 'Hello 222222' } } } stage('3') { when { expression { !skipStages } } steps { script { echo 'Hello 3333' } } } stage('Last') { steps { script { echo 'Hello Last' } } } } }
1条答案
按热度按时间hmtdttj41#
你可以使用when表达式来实现这个。