]> git.immae.eu Git - perso/Immae/Config/Nix.git/blobdiff - virtual/eldiron.nix
Add http configuration to modules and separate production from
[perso/Immae/Config/Nix.git] / virtual / eldiron.nix
index efaa0686aa899e3b8800b77c8ce80c8ae4d7866e..a1e69091decd65cc158d0fcadf7f22819a1b8691 100644 (file)
@@ -4,7 +4,7 @@
     enableRollback = true;
   };
 
-  eldiron = { config, pkgs, mylibs, ... }:
+  eldiron = { config, pkgs, mylibs, myconfig, ... }:
     with mylibs;
     let
         mypkgs = pkgs.callPackage ./packages.nix {
   {
     _module.args = {
       mylibs = import ../libs.nix;
+      myconfig = {
+        ips = {
+          main = "176.9.151.89";
+          production = "176.9.151.154";
+          integration = "176.9.151.155";
+        };
+      };
     };
 
     imports = [
         enable = true;
         allowedTCPPorts = [ 22 80 443 9418 ];
       };
+      interfaces."eth0".ipv4.addresses = [
+        # 176.9.151.89 declared in nixops -> infra / tools
+        { address = myconfig.ips.production; prefixLength = 32; }
+        { address = myconfig.ips.integration; prefixLength = 32; }
+      ];
     };
 
     deployment = {
@@ -54,7 +66,7 @@
       hetzner = {
         #robotUser = "defined in HETZNER_ROBOT_USER";
         #robotPass = "defined in HETZNER_ROBOT_PASS";
-        mainIPv4 = "176.9.151.89";
+        mainIPv4 = myconfig.ips.main;
         partitions = ''
           clearpart --all --initlabel --drives=sda,sdb
 
         install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions
         install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/adminer
         install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/mantisbt
-        install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/ttrss
         install -d -m 0750 -o wwwrun -g wwwrun /var/lib/php/sessions/davical
         '';
       # FIXME: initial sync
         sslServerKey = "/var/lib/acme/${domain}/key.pem";
         sslServerChain = "/var/lib/acme/${domain}/fullchain.pem";
         logFormat = "combinedVhost";
-        listen = [ { ip = "*"; port = 443; } ];
+        listen = [
+          { ip = "176.9.151.89";  port = 443; }
+        ];
       };
       apacheConfig = config.services.myWebsites.apacheConfig;
     in rec {
             mypkgs.davical.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
-          hostName = "connexionswing.immae.eu";
-          serverAliases = [ "sandetludo.immae.eu" ];
-          documentRoot = mypkgs.connexionswing_dev.webRoot;
-          extraConfig = builtins.concatStringsSep "\n" [
-            mypkgs.connexionswing_dev.apache.vhostConf
-          ];
-        })
         (withConf "connexionswing" // {
           hostName = "connexionswing.com";
           serverAliases = [ "sandetludo.com" "www.connexionswing.com" "www.sandetludo.com" ];
             mypkgs.connexionswing_prod.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
-          hostName = "ludivine.immae.eu";
-          documentRoot = mypkgs.ludivinecassal_dev.webRoot;
-          extraConfig = builtins.concatStringsSep "\n" [
-            mypkgs.ludivinecassal_dev.apache.vhostConf
-          ];
-        })
         (withConf "ludivinecassal" // {
           hostName = "ludivinecassal.com";
           serverAliases = [ "www.ludivinecassal.com" ];
             mypkgs.ludivinecassal_prod.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
-          hostName = "piedsjaloux.immae.eu";
-          documentRoot = mypkgs.piedsjaloux_dev.webRoot;
-          extraConfig = builtins.concatStringsSep "\n" [
-            mypkgs.piedsjaloux_dev.apache.vhostConf
-          ];
-        })
         (withConf "piedsjaloux" // {
           hostName = "piedsjaloux.fr";
           serverAliases = [ "www.piedsjaloux.fr" ];
             mypkgs.piedsjaloux_prod.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
-          hostName = "chloe.immae.eu";
-          documentRoot = mypkgs.chloe_dev.webRoot;
-          extraConfig = builtins.concatStringsSep "\n" [
-            mypkgs.chloe_dev.apache.vhostConf
-          ];
-        })
         (withConf "chloe" // {
           hostName = "osteopathe-cc.fr";
           serverAliases = [ "www.osteopathe-cc.fr" ];
             mypkgs.chloe_prod.apache.vhostConf
           ];
         })
-        (withConf "eldiron" // {
-          hostName = "dev.aten.pro";
-          documentRoot = mypkgs.aten_dev.webRoot;
-          extraConfig = builtins.concatStringsSep "\n" [
-            mypkgs.aten_dev.apache.vhostConf
-          ];
-        })
         (withConf "aten" // {
           hostName = "aten.pro";
           serverAliases = [ "www.aten.pro" ];