3f3cba7c32
After a handful of failed attempts to run lint-secrets.sh due to a missing `git-secrets` executable on my git server, I decided that now was a good time to use Nix to define my BuildKite pipelines. TL;DR: - Delete ci/scripts directory - Define ci/pipelines/{briefcase,socrates}.nix Outside of this repository: - I logged into my admin account at git.wpcarro.dev and changed my Gitea post-receive hook to trigger the briefcase pipeline - I logged into my BuildKite account, deleted my build-briefcase pipeline, created a new briefcase pipeline that called: ```shell nix-build -A ci.pipelines.briefcase -o briefcase.yaml buildkite-agent pipeline upload briefcase.yaml ``` One day I will audit all of my ad-hoc, non-mono-repo activity (like the steps I listed above) and attempt to fit everything herein... one step at a time, though!
18 lines
462 B
Nix
18 lines
462 B
Nix
{ pkgs, ... }:
|
|
|
|
let
|
|
pipeline.steps = [
|
|
{
|
|
command = ''
|
|
nix-build '<nixpkgs/nixos>' \
|
|
-I briefcase="$(pwd)" \
|
|
-I nixpkgs=/var/lib/buildkite-agent-socrates/nixpkgs-channels \
|
|
-I nixos-config=nixos/socrates/default.nix \
|
|
-A system \
|
|
--no-out-link \
|
|
--show-trace
|
|
'';
|
|
label = ":laptop: Socrates [build]";
|
|
}
|
|
];
|
|
in pkgs.writeText "socrates.yml" (builtins.toJSON pipeline)
|