feat(ops/pipelines): Create drvmap structure for each commit
Always create a structure that maps all targets to derivations, and persist it as a JSON file. This relates to some of the ideas expressed in: https://docs.google.com/document/d/16A0a5oUxH1VoiSM8hyFyLW0WiUYpNo2e2D6FTW4BlH8/edit The file is always uploaded to Buildkite as an artifact. This allows for retrieving it based on the commit ID in a Buildkite GraphQL query. By default, Buildkite stores artefacts for 6 months. Storage location can be overridden (with custom retention) through some environment variables, but for now at TVL the Buildkite-managed storage is fine. See also: https://buildkite.com/docs/pipelines/artifacts In the subsequent filtering implementation, when diffing commits across a time-range that exceeds artefact retention time, we should simply default to building everything. Change-Id: I6d808461cd1c1fdd6983ba8c8ef075736d42caa7 Reviewed-on: https://cl.tvl.fyi/c/depot/+/3662 Tested-by: BuildkiteCI Reviewed-by: sterni <sternenseemann@systemli.org>
This commit is contained in:
parent
546251678a
commit
0a21da2bb4
3 changed files with 40 additions and 10 deletions
|
@ -6,6 +6,7 @@
|
|||
---
|
||||
steps:
|
||||
- label: ":llama:"
|
||||
key: "pipeline-gen"
|
||||
command: |
|
||||
set -ue
|
||||
|
||||
|
@ -22,6 +23,8 @@ steps:
|
|||
buildkite-agent pipeline upload $$chunk
|
||||
done
|
||||
|
||||
buildkite-agent artifact upload pipeline/drvmap.json
|
||||
|
||||
# Wait for all previous steps to complete.
|
||||
- wait: null
|
||||
continue_on_failure: true
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue