This commit is contained in:
parent
b70ab8bd76
commit
8a639c4553
3 changed files with 45 additions and 1 deletions
|
@ -8,4 +8,4 @@ jobs:
|
||||||
runs-on: native
|
runs-on: native
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
- run: nix flake check --all-systems
|
- run: nix-build -A ci.check
|
||||||
|
|
8
default.nix
Normal file
8
default.nix
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
let
|
||||||
|
nilla = import ./nilla.nix { };
|
||||||
|
getPackage = name: nilla.packages.${name}.result.${builtins.currentSystem};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
ci.check = getPackage "ci-check";
|
||||||
|
formatter = getPackage "formatter";
|
||||||
|
}
|
36
nilla.nix
36
nilla.nix
|
@ -76,6 +76,42 @@
|
||||||
in
|
in
|
||||||
eval.config.build.wrapper;
|
eval.config.build.wrapper;
|
||||||
};
|
};
|
||||||
|
ci-check =
|
||||||
|
let
|
||||||
|
all-packages = builtins.attrValues (builtins.removeAttrs config.packages [ "ci-check" ]);
|
||||||
|
all-packages' = lib.lists.flatten (map (pkg: builtins.attrValues pkg.result) all-packages);
|
||||||
|
|
||||||
|
nixos-systems = builtins.attrValues config.systems.nixos;
|
||||||
|
nixos-systems' = map (system: system.result.config.system.build.toplevel) nixos-systems;
|
||||||
|
|
||||||
|
darwin-systems = builtins.attrValues config.systems.darwin;
|
||||||
|
darwin-systems' = map (system: system.result.config.system.build.toplevel) darwin-systems;
|
||||||
|
|
||||||
|
all-drvs = all-packages' ++ nixos-systems' ++ darwin-systems';
|
||||||
|
all-drvs' = lib.strings.concatMapSep "\n" builtins.unsafeDiscardStringContext all-drvs;
|
||||||
|
in
|
||||||
|
mkPackage (
|
||||||
|
{
|
||||||
|
lib,
|
||||||
|
stdenvNoCC,
|
||||||
|
system,
|
||||||
|
}:
|
||||||
|
stdenvNoCC.mkDerivation {
|
||||||
|
name = "nilla-eval-check";
|
||||||
|
src = lib.cleanSource ./.;
|
||||||
|
doCheck = true;
|
||||||
|
|
||||||
|
allDerivations = all-drvs';
|
||||||
|
formatter = lib.getExe config.packages.formatter.result.${system};
|
||||||
|
|
||||||
|
passAsFile = [ "allDerivations" ];
|
||||||
|
|
||||||
|
installPhase = ''touch "$out"'';
|
||||||
|
checkPhase = ''
|
||||||
|
"$formatter" --ci
|
||||||
|
'';
|
||||||
|
}
|
||||||
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
config.shells.default = {
|
config.shells.default = {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue