feat(ops/pipelines): Add Buildkite pipeline configuration
This adds configuration which generates the structure expected for Buildkite pipelines, which can then be dynamically ingested by Buildkite when a pipeline is triggered. Change-Id: I61e3dc3affb19c1f2550ef827fa73b17f8d8ae47 Reviewed-on: https://cl.tvl.fyi/c/depot/+/627 Reviewed-by: ericvolp12 <ericvolp12@gmail.com> Reviewed-by: lukegb <lukegb@tvl.fyi>
This commit is contained in:
parent
7f703913ed
commit
22b8a49b87
3 changed files with 25 additions and 0 deletions
3
ops/pipelines/README.md
Normal file
3
ops/pipelines/README.md
Normal file
|
@ -0,0 +1,3 @@
|
|||
This folder contains various utilities used for our [Buildkite CI
|
||||
setup][ci]. These are mostly hooks invoked by Buildkite runners, or
|
||||
configuration used to set up the build pipelines.
|
21
ops/pipelines/depot.nix
Normal file
21
ops/pipelines/depot.nix
Normal file
|
@ -0,0 +1,21 @@
|
|||
# This file configures the primary build pipeline used for the
|
||||
# top-level list of depot targets.
|
||||
#
|
||||
# It outputs a "YAML" (actually JSON) file which is evaluated and
|
||||
# submitted to Buildkite at the start of each build. This means we can
|
||||
# dynamically configure the pipeline execution here.
|
||||
{ depot, pkgs, ... }:
|
||||
|
||||
let
|
||||
inherit (builtins) toJSON;
|
||||
inherit (pkgs) writeText;
|
||||
|
||||
# This defines the build pipeline, using the pipeline format
|
||||
# documented on https://buildkite.com/docs/pipelines/defining-steps
|
||||
pipeline.steps = [
|
||||
{
|
||||
command = "nix-build -A ciBuilds.__allTargets";
|
||||
label = "all-targets";
|
||||
}
|
||||
];
|
||||
in writeText "depot.yaml" (toJSON pipeline)
|
1
third_party/default.nix
vendored
1
third_party/default.nix
vendored
|
@ -44,6 +44,7 @@ let
|
|||
buildGoModule
|
||||
buildGoPackage
|
||||
buildPackages
|
||||
buildkite-agent
|
||||
bzip2
|
||||
c-ares
|
||||
cacert
|
||||
|
|
Loading…
Reference in a new issue