2024-12-12 11:14:03 +01:00
|
|
|
{ self, inputs, ... }:
|
2024-11-17 01:02:23 +01:00
|
|
|
|
2025-01-30 09:53:45 +01:00
|
|
|
let
|
|
|
|
makeResource =
|
|
|
|
vmid:
|
|
|
|
{ providers, ... }:
|
|
|
|
let
|
|
|
|
vmmodule = import (./. + "/${vmid}");
|
|
|
|
in
|
|
|
|
{
|
|
|
|
type = providers.local.exec;
|
|
|
|
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
|
|
|
ssh = {
|
|
|
|
# FIXME: The following assumes that `vmmodule` does not use arguments
|
|
|
|
# and does not get `proxolix.vm.ip4` from an import, etc. I have tried
|
|
|
|
# an approach with `lib.evalModules` but I cannot get it to work.
|
|
|
|
host = vmmodule.procolix.vm.ip4;
|
|
|
|
opts = "";
|
|
|
|
hostPublicKey = self.keys.systems.${vmid};
|
|
|
|
};
|
|
|
|
nixpkgs = inputs.nixpkgs;
|
|
|
|
nixos.module = {
|
|
|
|
imports = [
|
|
|
|
vmmodule
|
|
|
|
./common
|
|
|
|
self.nixosModules.ageSecrets
|
|
|
|
{ fediversity.hostPublicKey = self.keys.systems.${vmid}; }
|
|
|
|
];
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
in
|
2024-11-17 01:02:23 +01:00
|
|
|
{
|
2024-11-18 11:44:35 +01:00
|
|
|
nixops4Deployments.git =
|
2024-11-17 01:02:23 +01:00
|
|
|
{ providers, ... }:
|
|
|
|
{
|
|
|
|
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
|
|
|
|
|
|
|
resources = {
|
2025-01-30 09:53:45 +01:00
|
|
|
vm02116 = makeResource "vm02116" { inherit providers; };
|
|
|
|
fedi300 = makeResource "fedi300" { inherit providers; };
|
2024-12-16 13:06:35 +01:00
|
|
|
};
|
|
|
|
};
|
2024-11-18 11:44:35 +01:00
|
|
|
|
2024-12-16 13:06:35 +01:00
|
|
|
nixops4Deployments.web =
|
|
|
|
{ providers, ... }:
|
|
|
|
{
|
|
|
|
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
|
|
|
|
|
|
|
resources = {
|
2025-01-30 09:53:45 +01:00
|
|
|
vm02187 = makeResource "vm02187" { inherit providers; };
|
2024-12-16 13:06:35 +01:00
|
|
|
};
|
|
|
|
};
|
2024-11-17 01:02:23 +01:00
|
|
|
|
2024-12-16 13:06:35 +01:00
|
|
|
nixops4Deployments.other =
|
|
|
|
{ providers, ... }:
|
|
|
|
{
|
|
|
|
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
|
|
|
|
|
|
|
resources = {
|
2025-01-30 09:53:45 +01:00
|
|
|
vm02117 = makeResource "vm02117" { inherit providers; };
|
|
|
|
vm02179 = makeResource "vm02179" { inherit providers; };
|
|
|
|
vm02186 = makeResource "vm02186" { inherit providers; };
|
2024-11-18 11:55:50 +01:00
|
|
|
};
|
|
|
|
};
|
2024-11-17 01:02:23 +01:00
|
|
|
}
|