summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Pursehouse <dpursehouse@collab.net>2019-11-26 10:16:21 +0900
committerDavid Pursehouse <dpursehouse@collab.net>2019-11-26 10:16:21 +0900
commite0d1d655c2dd4fc63821805e6a7f77852c6319bc (patch)
tree21ed3245e09311291570659eacb97995ed1204d9
parentea1f0165ade2a370e69d6e2cb527907f797c31a5 (diff)
parentbf79cd73eb88db2c8cf752e975343051c97bfd54 (diff)
Merge branch 'stable-2.14' into stable-2.15
* stable-2.14: Fix reporting for flaky builds in Jenkinsfile Change-Id: Ie6e4a2e57aadd727990fc8dfa6e96dac34af1a1b
-rw-r--r--Jenkinsfile14
1 files changed, 9 insertions, 5 deletions
diff --git a/Jenkinsfile b/Jenkinsfile
index 29a3d1584e..3fdc91bd15 100644
--- a/Jenkinsfile
+++ b/Jenkinsfile
@@ -154,18 +154,19 @@ def collectBuildModes() {
}
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 @@ def prepareBuildsForMode(buildName, mode="reviewdb", retryTimes = 1) {
Builds.verification[mode] = new Build(
slaveBuild.getAbsoluteUrl(), slaveBuild.getResult())
}
+ if (slaveBuild.getResult() == "SUCCESS") {
+ break
+ }
}
}
}