From fc14c21bb91cb59956367dac17e59494911189fd Mon Sep 17 00:00:00 2001 From: Vincent Ambo Date: Fri, 10 Dec 2021 11:01:21 +0300 Subject: fix(ops/pipelines): Move :anchor: to static pipeline This step would get inserted at the wrong point in the build pipeline otherwise, causing a dependency cycle and causing the pipeline to fail. Change-Id: I534568eec77f74ae6c47276820f8a9e99493a3ea --- ops/pipelines/depot.nix | 20 -------------------- ops/pipelines/static-pipeline.yaml | 18 ++++++++++++++++++ 2 files changed, 18 insertions(+), 20 deletions(-) diff --git a/ops/pipelines/depot.nix b/ops/pipelines/depot.nix index de03755373c0..878526e37484 100644 --- a/ops/pipelines/depot.nix +++ b/ops/pipelines/depot.nix @@ -76,25 +76,5 @@ let ++ [ # Simultaneously run protobuf checks protoCheck - - # After duck, on success, create a gcroot if the build branch is - # canon. - # - # We care that this anchors *most* of the depot, in practice - # it's unimportant if there is a build race and we get +-1 of - # the targets. - # - # Unfortunately this requires a third evaluation of the graph, - # but since it happens after :duck: it should not affect the - # timing of status reporting back to Gerrit. - ({ - command = "nix-instantiate -A ci.gcroot --add-root /nix/var/nix/gcroots/depot/canon"; - label = ":anchor:"; - "if" = ''build.branch == "refs/heads/canon"''; - depends_on = [{ - step = ":duck:"; - allow_failure = false; - }]; - }) ]; in (writeText "depot.yaml" (toJSON pipeline)) diff --git a/ops/pipelines/static-pipeline.yaml b/ops/pipelines/static-pipeline.yaml index 2c7767820b94..388cf92315df 100644 --- a/ops/pipelines/static-pipeline.yaml +++ b/ops/pipelines/static-pipeline.yaml @@ -46,6 +46,24 @@ steps: exit 1 fi + # After duck, on success, create a gcroot if the build branch is + # canon. + # + # We care that this anchors *most* of the depot, in practice it's + # unimportant if there is a build race and we get +-1 of the + # targets. + # + # Unfortunately this requires a third evaluation of the graph, but + # since it happens after :duck: it should not affect the timing of + # status reporting back to Gerrit. + - label: ":anchor:" + if: "build.branch == 'refs/heads/canon'" + command: | + nix-instantiate -A ci.gcroot --add-root /nix/var/nix/gcroots/depot/canon + depends_on: + - step: ":duck:" + allow_failure: false + # Create a revision number for the current commit for builds on # canon. # -- cgit 1.4.1