Jos*_*ose 19 post-build jenkins jenkins-plugins
是否有可能的方法/插件可以在Jenkins作业中止时运行后期构建脚本.我确实看到post build插件提供了一个执行一组脚本的操作,但这些脚本只能在成功作业或失败作业的2个选项上运行.
对于声明式 Jenkins 管道,您可以按如下方式实现:
pipeline {
agent any
options {
timeout(time: 2, unit: 'MINUTES') // abort on exceeding the timeout
}
stages {
stage('Echo 1') {
steps {
echo 'Hello World'
}
}
stage('Sleep'){
steps {
sh 'sleep 180'
}
}
stage('Wake up'){
steps {
echo "Woken up"
}
}
}
// this post part is executed if job is aborted
post {
aborted {
script{
echo "Damn it. I was aborted!"
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
据我所知,如果构建被中止,则无法再执行其中的任何构建步骤(或后构建步骤) - 这是有道理的,这就是我所期望的“中止”。
您可以做的是创建另一个作业来监视第一个作业的状态,并在它被中止时触发(例如,请参阅BuildResultTrigger插件)。
另一种解决方案可能是创建一个“包装器”作业,它将第一个作业调用为构建步骤 - 这样您就可以在完成后执行其他步骤,例如检查其状态,即使它已中止。
| 归档时间: |
|
| 查看次数: |
19937 次 |
| 最近记录: |