diff options
author | David Pursehouse <dpursehouse@collab.net> | 2019-11-26 10:16:21 +0900 |
---|---|---|
committer | David Pursehouse <dpursehouse@collab.net> | 2019-11-26 10:16:21 +0900 |
commit | e0d1d655c2dd4fc63821805e6a7f77852c6319bc (patch) | |
tree | 21ed3245e09311291570659eacb97995ed1204d9 | |
parent | ea1f0165ade2a370e69d6e2cb527907f797c31a5 (diff) | |
parent | bf79cd73eb88db2c8cf752e975343051c97bfd54 (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-- | Jenkinsfile | 14 |
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 + } } } } |