refactor(ops/pipelines): Move failure status zeroing to setup

We changed the configured pipeline in Buildkite to upload
`static-pipeline.yaml` instead of containing the steps of that
pipeline itself.

This makes it easier to test changes to builds and such, but adds
another build step with scheduling overhead etc.

However - we can work around this by killing one of the existing build
steps. There's no reason the failure status zeroing (required for
status reporting) shouldn't be part of the pipeline setup, so I've
moved it there instead and nuked that step.

This should mean that the pipeline is configurable from within the
repo, but without slowing anything down.

Change-Id: I206ecc02647de42a461e33c02879ab84daf5ed2b
Reviewed-on: https://cl.tvl.fyi/c/depot/+/3461
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
This commit is contained in:
Vincent Ambo 2021-08-29 15:25:59 +03:00 committed by tazjin
parent fe225d48a1
commit 43269730e6
2 changed files with 7 additions and 13 deletions

View file

@ -75,17 +75,8 @@ let
#
# Pipeline steps need to stay in order.
pipeline.steps =
# Zero the failure status
[
{
command = "buildkite-agent meta-data set 'failure' '0'";
label = ":buildkite:";
}
{ wait = null; }
]
# Create build steps for each CI target
++ (map mkStep depot.ci.targets)
(map mkStep depot.ci.targets)
++ [
# Simultaneously run protobuf checks

View file

@ -1,6 +1,8 @@
# This file defines the static pipeline which is uploaded in the
# Buildkite admin interface. These steps run at the beginning of each
# build and cause the dynamic pipeline generation to run.
# This file defines the static Buildkite pipeline which attempts to
# create the dynamic pipeline of all depot targets.
#
# If something fails during the creation of the pipeline, the fallback
# is executed instead which will simply report an error to Gerrit.
---
steps:
- label: ":llama:"
@ -12,4 +14,5 @@ steps:
}
nix-build -A ops.pipelines.depot -o depot.yaml --show-trace || fallback
buildkite-agent meta-data set 'failure' '0'
buildkite-agent pipeline upload depot.yaml || fallback