forked from Fediversity/Fediversity
Factorise the resource definition
This commit is contained in:
parent
2bb1590d54
commit
34eb7263cc
7 changed files with 36 additions and 120 deletions
|
@ -2,7 +2,6 @@
|
|||
|
||||
{
|
||||
imports = [
|
||||
../common
|
||||
./forgejo-actions-runner.nix
|
||||
];
|
||||
|
||||
|
|
|
@ -1,5 +1,35 @@
|
|||
{ self, inputs, ... }:
|
||||
|
||||
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
|
||||
{
|
||||
nixops4Deployments.git =
|
||||
{ providers, ... }:
|
||||
|
@ -7,41 +37,8 @@
|
|||
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
||||
|
||||
resources = {
|
||||
vm02116 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "185.206.232.34";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.vm02116;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./vm02116
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.vm02116; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
fedi300 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "95.215.187.30";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.fedi300;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./fedi300
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.fedi300; }
|
||||
];
|
||||
};
|
||||
};
|
||||
vm02116 = makeResource "vm02116" { inherit providers; };
|
||||
fedi300 = makeResource "fedi300" { inherit providers; };
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -51,23 +48,7 @@
|
|||
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
||||
|
||||
resources = {
|
||||
vm02187 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "185.206.232.187";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.vm02187;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./vm02187
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.vm02187; }
|
||||
];
|
||||
};
|
||||
};
|
||||
vm02187 = makeResource "vm02187" { inherit providers; };
|
||||
};
|
||||
};
|
||||
|
||||
|
@ -77,59 +58,9 @@
|
|||
providers.local = inputs.nixops4-nixos.modules.nixops4Provider.local;
|
||||
|
||||
resources = {
|
||||
vm02117 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "185.206.232.106";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.vm02117;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./vm02117
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.vm02117; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
vm02179 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "185.206.232.179";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.vm02179;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./vm02179
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.vm02179; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
vm02186 = {
|
||||
type = providers.local.exec;
|
||||
imports = [ inputs.nixops4-nixos.modules.nixops4Resource.nixos ];
|
||||
ssh = {
|
||||
host = "185.206.232.186";
|
||||
opts = "";
|
||||
hostPublicKey = self.keys.systems.vm02186;
|
||||
};
|
||||
nixpkgs = inputs.nixpkgs;
|
||||
nixos.module = {
|
||||
imports = [
|
||||
./vm02186
|
||||
self.nixosModules.ageSecrets
|
||||
{ fediversity.hostPublicKey = self.keys.systems.vm02186; }
|
||||
];
|
||||
};
|
||||
};
|
||||
vm02117 = makeResource "vm02117" { inherit providers; };
|
||||
vm02179 = makeResource "vm02179" { inherit providers; };
|
||||
vm02186 = makeResource "vm02186" { inherit providers; };
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
../common
|
||||
./forgejo.nix
|
||||
];
|
||||
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
imports = [
|
||||
../common
|
||||
];
|
||||
|
||||
procolix.vm = {
|
||||
name = "vm02117";
|
||||
ip4 = "185.206.232.106";
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
imports = [
|
||||
../common
|
||||
];
|
||||
|
||||
procolix.vm = {
|
||||
name = "vm02179";
|
||||
ip4 = "185.206.232.179";
|
||||
|
|
|
@ -1,8 +1,4 @@
|
|||
{
|
||||
imports = [
|
||||
../common
|
||||
];
|
||||
|
||||
procolix.vm = {
|
||||
name = "vm02186";
|
||||
ip4 = "185.206.232.186";
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
imports = [
|
||||
../common
|
||||
./wiki.nix
|
||||
];
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue