使用脚本 jenkins 重新 运行 管道
Re-run a pipeline using script jenkins
我有一个管道,后面有一些详细信息
pipeline {
parameters {
booleanParam(name: 'RERUN', defaultValue: false, description: 'Run Failed Tests')
}
stage('Run tests ') {
steps {
runTest()
}
}
post {
always {
reRun()
}
}
}
def reRun() {
if ("SUCCESS".equals(currentBuild.result)) {
echo "LAST BUILD WAS SUCCESS"
} else if ("UNSTABLE".equals(currentBuild.result)) {
echo "LAST BUILD WAS UNSTABLE"
}
}
但我希望在“运行 测试”阶段执行后,如果某些测试失败,我想重新运行 管道,参数 RERUN 为 true 而不是 false。我怎样才能通过脚本而不是使用插件重播?
我无法在搜索中找到如何重新运行 使用参数,如果有人能帮助我,我将不胜感激。
首先您可以使用 post 步骤来确定作业是否不稳定:
post{
unstable{
echo "..."
}
}
然后您可以像这样使用新参数触发相同的作业:
build job: 'your-project-name', parameters: [[$class: 'BooleanParameterValue', name: 'RERUN', value: Boolean.valueOf("true")]]
我有一个管道,后面有一些详细信息
pipeline {
parameters {
booleanParam(name: 'RERUN', defaultValue: false, description: 'Run Failed Tests')
}
stage('Run tests ') {
steps {
runTest()
}
}
post {
always {
reRun()
}
}
}
def reRun() {
if ("SUCCESS".equals(currentBuild.result)) {
echo "LAST BUILD WAS SUCCESS"
} else if ("UNSTABLE".equals(currentBuild.result)) {
echo "LAST BUILD WAS UNSTABLE"
}
}
但我希望在“运行 测试”阶段执行后,如果某些测试失败,我想重新运行 管道,参数 RERUN 为 true 而不是 false。我怎样才能通过脚本而不是使用插件重播? 我无法在搜索中找到如何重新运行 使用参数,如果有人能帮助我,我将不胜感激。
首先您可以使用 post 步骤来确定作业是否不稳定:
post{
unstable{
echo "..."
}
}
然后您可以像这样使用新参数触发相同的作业:
build job: 'your-project-name', parameters: [[$class: 'BooleanParameterValue', name: 'RERUN', value: Boolean.valueOf("true")]]