diff options
-rw-r--r-- | post-build-lava.groovy | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/post-build-lava.groovy b/post-build-lava.groovy index b54b18a..a4ecbd7 100644 --- a/post-build-lava.groovy +++ b/post-build-lava.groovy @@ -61,4 +61,29 @@ if (matcher?.matches()) { lavaJobIdPool += " ${manager.build.number}" parameter.setDefaultValue(lavaJobIdPool) job.save() + + // Call post-build-report with parameters file + def skipReport = manager.build.getEnvironment(manager.listener)['SKIP_REPORT'] + if (!skipReport.toBoolean()) { + def project = manager.build.project; + def pbrParamsCache = "" + + def sourceJob = hudson.model.Hudson.instance.getItem(jobName) + def sourceVariables = sourceJob.getBuildByNumber(upstreamBuild.toInteger()).getEnvironment() + for (sourceVariableName in sourceVariables.keySet()) { + if (sourceVariableName.startsWith("GERRIT")) { + sourceVariableValue = sourceVariables.get(sourceVariableName) + pbrParamsCache += "SOURCE_${sourceVariableName}=${sourceVariableValue}\n"; + } + } + + pbrParamsCache += "SOURCE_PROJECT_NAME=${jobName}\n"; + pbrParamsCache += "SOURCE_BUILD_NUMBER=${upstreamBuild}\n"; + pbrParamsCache += "SOURCE_BUILD_ID=${upstreamBuild}\n"; + pbrParamsCache += "SOURCE_BUILD_URL=${jobUrl}\n"; + pbrParamsCache += "LAVA_JOB_IDS=${lavaJobId}\n"; + + def pbrParams = project.getWorkspace().child("post_build_reports_parameters"); + pbrParams.write(pbrParamsCache, null); + } } |