diff options
| author | seth <[email protected]> | 2024-02-08 21:20:33 -0500 |
|---|---|---|
| committer | seth <[email protected]> | 2024-02-09 01:17:16 -0500 |
| commit | 98e9edac4c79a6f4f723db9df79adf99ac3ffb51 (patch) | |
| tree | d4fe1abf1d302f832e08a8b7b514d5f8a9e1a628 | |
| parent | 1cc489d72ce9fcff1c7959e5f9e794442451ae82 (diff) | |
lib/ci: init
| -rw-r--r-- | lib/ci.nix | 6 | ||||
| -rw-r--r-- | repo/ci.nix | 10 |
2 files changed, 9 insertions, 7 deletions
diff --git a/lib/ci.nix b/lib/ci.nix new file mode 100644 index 0000000..7a01e39 --- /dev/null +++ b/lib/ci.nix @@ -0,0 +1,6 @@ +{lib, ...}: ciSystems: { + getOutputs = lib.getAttrs ciSystems; + + mapCfgsToDerivs = lib.mapAttrs (_: cfg: cfg.activationPackage or cfg.config.system.build.toplevel); + getCompatibleCfgs = lib.filterAttrs (_: cfg: lib.elem cfg.pkgs.system ciSystems); +} diff --git a/repo/ci.nix b/repo/ci.nix index e33c088..8538d28 100644 --- a/repo/ci.nix +++ b/repo/ci.nix @@ -5,24 +5,20 @@ }: { flake.hydraJobs = let ciSystems = ["x86_64-linux"]; - - getOutputs = lib.getAttrs ciSystems; - - mapCfgsToDerivs = lib.mapAttrs (_: cfg: cfg.activationPackage or cfg.config.system.build.toplevel); - getCompatibleCfgs = lib.filterAttrs (_: cfg: lib.elem cfg.pkgs.system ciSystems); + ci = self.lib.ci ciSystems; in builtins.foldl' lib.recursiveUpdate {} [ ( lib.genAttrs ["nixosConfigurations" "homeConfigurations"] ( - type: mapCfgsToDerivs (getCompatibleCfgs self."${type}") + type: ci.mapCfgsToDerivs (ci.getCompatibleCfgs self."${type}") ) ) ( lib.genAttrs ["checks" "devShells"] - (type: getOutputs self.${type}) + (type: ci.getOutputs self.${type}) ) ]; } |
