about summary refs log tree commit diff
path: root/ops/pipelines
diff options
context:
space:
mode:
authorVincent Ambo <mail@tazj.in>2021-12-15T16·35+0300
committertazjin <mail@tazj.in>2021-12-15T16·55+0000
commit743bee868649ff19466f209945b4ac135933d571 (patch)
tree7408586b7d54154e99eca326b42c65820edecf89 /ops/pipelines
parentb6d143e5d225e6aa293c23512336b7136ac58dcf (diff)
fix(ops/pipelines): Allow steps to run immediately after upload r/3250
This fix was recommended by Buildkite and is explained in the comment.

Change-Id: I3f1c1c07cba0b417857d69c021c8af4750d645c4
Reviewed-on: https://cl.tvl.fyi/c/depot/+/4334
Tested-by: BuildkiteCI
Reviewed-by: sterni <sternenseemann@systemli.org>
Diffstat (limited to 'ops/pipelines')
-rw-r--r--ops/pipelines/depot.nix11
1 files changed, 11 insertions, 0 deletions
diff --git a/ops/pipelines/depot.nix b/ops/pipelines/depot.nix
index 7b095cd712..5843423d05 100644
--- a/ops/pipelines/depot.nix
+++ b/ops/pipelines/depot.nix
@@ -62,6 +62,17 @@ let
         # pipeline construction.
         (pathExists (unsafeDiscardStringContext target.outPath));
       in if shouldSkip then "Target was already built." else false;
+
+    # Add a "fake" dependency on the initial static pipeline step. When
+    # uploading a pipeline dynamically, an implicit dependency on the uploading
+    # step is added to all newly created build steps. Since we are uploading in
+    # batches this stops the jobs in the first batch from running before all
+    # batches have been uploaded.
+    #
+    # By setting an explicit dependency on a step that has always completed at
+    # this point, we override that behaviour and allow the steps to start
+    # running already.
+    depends_on = ":init:";
   };
 
   # Protobuf check step which validates that changes to .proto files