Merge branch 'stable-2.14' into stable-2.15
* stable-2.14:
Fix reporting for flaky builds in Jenkinsfile
Change-Id: Ie6e4a2e57aadd727990fc8dfa6e96dac34af1a1b
diff --git a/Jenkinsfile b/Jenkinsfile
index 29a3d15..3fdc91b 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -154,18 +154,19 @@
}
def prepareBuildsForMode(buildName, mode="reviewdb", retryTimes = 1) {
- def propagate = retryTimes == 1 ? false : true
return {
stage("${buildName}/${mode}") {
- catchError{
- retry(retryTimes){
- def slaveBuild = build job: "${buildName}", parameters: [
+ def slaveBuild = null
+ for (int i = 1; i <= retryTimes; i++) {
+ try {
+ slaveBuild = build job: "${buildName}", parameters: [
string(name: 'REFSPEC', value: Change.ref),
string(name: 'BRANCH', value: Change.sha1),
string(name: 'CHANGE_URL', value: Change.url),
string(name: 'MODE', value: mode),
string(name: 'TARGET_BRANCH', value: Change.branch)
- ], propagate: propagate
+ ], propagate: false
+ } finally {
if (buildName == "Gerrit-codestyle"){
Builds.codeStyle = new Build(
slaveBuild.getAbsoluteUrl(), slaveBuild.getResult())
@@ -173,6 +174,9 @@
Builds.verification[mode] = new Build(
slaveBuild.getAbsoluteUrl(), slaveBuild.getResult())
}
+ if (slaveBuild.getResult() == "SUCCESS") {
+ break
+ }
}
}
}