diff options
| author | Max Audron <audron@cocaine.farm> | 2023-08-11 16:51:35 +0200 |
|---|---|---|
| committer | Max Audron <audron@cocaine.farm> | 2023-08-11 16:51:35 +0200 |
| commit | 8f7c59e10a48c24120dd580b196acd419e5875d0 (patch) | |
| tree | 57a470c9e726b0e09aede6c8470467f790d77dc8 /nixinate/generate-apps.nix | |
| parent | refactor k8s module (diff) | |
add custom nixinate impl
Diffstat (limited to 'nixinate/generate-apps.nix')
| -rw-r--r-- | nixinate/generate-apps.nix | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/nixinate/generate-apps.nix b/nixinate/generate-apps.nix new file mode 100644 index 0000000..6871d04 --- /dev/null +++ b/nixinate/generate-apps.nix @@ -0,0 +1,32 @@ +nixpkgs: pkgs: flake: + +let + machines = builtins.attrNames flake.nixosConfigurations; + validMachines = nixpkgs.lib.remove "" + (nixpkgs.lib.forEach machines + (x: nixpkgs.lib.optionalString + (flake.nixosConfigurations."${x}"._module.args ? nixinate) "${x}")); + mkDeployScript = import ./make-deploy-script.nix { inherit nixpkgs pkgs flake; }; +in +nixpkgs.lib.genAttrs + validMachines + (x: + { + type = "app"; + program = toString (mkDeployScript { + machine = x; + dryRun = false; + }); + } + ) + // nixpkgs.lib.genAttrs + (map (a: a + "-dry-run") validMachines) + (x: + { + type = "app"; + program = toString (mkDeployScript { + machine = nixpkgs.lib.removeSuffix "-dry-run" x; + dryRun = true; + }); + } + ) |
