diff --git a/morph/grid/production/grid.nix b/morph/grid/production/grid.nix index fb680338a08b0006e166b13066199d20f6836e44..a7b8be201d1c7b86576d9d069c3053984caa66e6 100644 --- a/morph/grid/production/grid.nix +++ b/morph/grid/production/grid.nix @@ -13,6 +13,14 @@ let privateKeyPath = toString ./. + "/${rawConfig.privateKeyPath}"; }; + # Configure deployment management authorization for all systems in the grid. + deployment = { + services.private-storage.deployment = { + authorizedKey = builtins.readFile "${config.publicKeyPath}/deploy_key.pub"; + gridName = "production"; + }; + }; + payments = { imports = [ gridlib.issuer @@ -20,6 +28,7 @@ let (gridlib.customize-issuer (config // { monitoringvpnIPv4 = "172.23.23.11"; })) + deployment ]; }; @@ -33,6 +42,7 @@ let monitoringvpnIPv4 = "172.23.23.1"; stateVersion = "19.09"; }) + deployment ]; }; @@ -58,6 +68,9 @@ let monitoringvpnIPv4 = vpnIP; inherit stateVersion; })) + + # Also configure deployment management authorization + deployment ]; # And supply configuration for those hardware / network / bootloader diff --git a/morph/grid/production/public-keys/deploy_key.pub b/morph/grid/production/public-keys/deploy_key.pub new file mode 100644 index 0000000000000000000000000000000000000000..3d9ea022d26654ba7b18bd3426a464049b58c9ea --- /dev/null +++ b/morph/grid/production/public-keys/deploy_key.pub @@ -0,0 +1 @@ +ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIK50RwXncelNB4JAazoXEhCxXbJZ79qWcQMAWeX14H+W exarkun@baryon