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!
14 lines
358 B
Nix
14 lines
358 B
Nix
{ pkgs, ... }:
|
|
|
|
let
|
|
pipeline.steps = [
|
|
{
|
|
command = "${pkgs.git-secrets}/bin/git-secrets";
|
|
label = ":briefcase: Briefcase [lint]";
|
|
}
|
|
{
|
|
command = "nix-build . -I briefcase=$(pwd) --no-out-link --show-trace";
|
|
label = ":briefcase: Briefcase [build]";
|
|
}
|
|
];
|
|
in pkgs.writeText "briefcase.yaml" (builtins.toJSON pipeline)
|