aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBernard Ogden <bernie.ogden@linaro.org>2015-12-17 14:18:03 +0000
committerLinaro Code Review <review@review.linaro.org>2016-01-04 10:38:36 +0000
commitf5f8b66484870be372e4c7208ba1da3e976b1ef7 (patch)
tree42ccb2f767acce555fae3edc7ad239e6f7824f9a
parent397a9e26396d72548c112510ecdbec2d9921ef8d (diff)
tcwg-buildfarm-master-hetzner-bernie: Child triggers
Previously, master of the matrix was triggering, but master did not have access to the parameters file, so nothing got triggered. This introduces a race, as described in the comment. Race has minimal chance of ever causing a problem. Change-Id: If4cface3483f7fcdc1b79c2edd5c39b9843b0a62
-rw-r--r--tcwg-buildfarm-master-hetzner-bernie.yaml28
1 files changed, 22 insertions, 6 deletions
diff --git a/tcwg-buildfarm-master-hetzner-bernie.yaml b/tcwg-buildfarm-master-hetzner-bernie.yaml
index e806164..6ba5520 100644
--- a/tcwg-buildfarm-master-hetzner-bernie.yaml
+++ b/tcwg-buildfarm-master-hetzner-bernie.yaml
@@ -198,15 +198,31 @@
exit $result
- inject:
properties-file: 'artifact_parameters'
+ #If bench_parameters is missing, we don't set any parameters and
+ #therefore do not trigger. We _do_ trigger even when some configurations
+ #of the build have failed (unless no parameters are set).
+ #There is a race here - tcwg-benchmark may want to access the
+ #artifacts before the archive step (below) completes. In practice, this
+ #is very unlikely to ever cause a problem - the artifacts are accessed
+ #by a lava job triggered by tcwg-benchmark, and the lava target has to
+ #boot, so there is a lot of time for the archive step to run.
+ #Ideally, we would trigger _after_ archive, but this happens in the
+ #master of this matrix job, and the master does not have access to
+ #benchmark_parameters. We can copy benchmark_parameters up to the
+ #master, but then we have the problem of identifying all the benchmark_
+ #parameters for each child of the matrix, and triggering a build for
+ #each.
+ #The 'Use files in matrix child builds' option of trigger-parameterized-builds
+ #would likely solve this problem - but it is not exposed in jjb. Have
+ #raised https://storyboard.openstack.org/#!/story/2000444.
+ #TODO: When we have a jjb that lets us eliminate the race, eliminate
+ #the race.
+ - trigger-builds:
+ - project: tcwg-benchmark
+ property-file: bench_parameters
publishers:
- archive:
artifacts: '${TOOLCHAIN},${SYSROOT}'
only-if-success: true
fingerprint: true
allow-empty: true
- #If bench_parameters is missing, we don't set any parameters and
- #therefore do not trigger. We _do_ trigger even when some configurations
- #of the build have failed (unless no parameters are set).
- - trigger-parameterized-builds:
- - project: tcwg-benchmark
- property-file: bench_parameters