From: Ismaƫl Bouya Date: Sat, 7 Sep 2019 08:59:55 +0000 (+0200) Subject: Add Telio Tortay website X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FConfig%2FNix.git;a=commitdiff_plain;h=93531b30f0c08f6c549fac338a1cb8070c3c0a9a Add Telio Tortay website --- diff --git a/modules/private/default.nix b/modules/private/default.nix index 5f97f7f..cf15499 100644 --- a/modules/private/default.nix +++ b/modules/private/default.nix @@ -32,6 +32,7 @@ set = { ludivinecassalProd = ./websites/ludivinecassal/production.nix; nassimeProd = ./websites/nassime/production.nix; naturaloutilProd = ./websites/naturaloutil/production.nix; + telioTortayProd = ./websites/teliotortay/production.nix; papaSurveillance = ./websites/papa/surveillance.nix; piedsjalouxInte = ./websites/piedsjaloux/integration.nix; piedsjalouxProd = ./websites/piedsjaloux/production.nix; diff --git a/modules/private/websites/default.nix b/modules/private/websites/default.nix index 63dd53d..f55f7e3 100644 --- a/modules/private/websites/default.nix +++ b/modules/private/websites/default.nix @@ -248,6 +248,7 @@ in nassime.production.enable = true; naturaloutil.production.enable = true; + telioTortay.production.enable = true; papa.surveillance.enable = true; diff --git a/modules/private/websites/teliotortay/production.nix b/modules/private/websites/teliotortay/production.nix new file mode 100644 index 0000000..445117d --- /dev/null +++ b/modules/private/websites/teliotortay/production.nix @@ -0,0 +1,76 @@ +{ lib, pkgs, config, myconfig, ... }: +let + adminer = pkgs.callPackage ../commons/adminer.nix {}; + cfg = config.myServices.websites.telioTortay.production; + varDir = "/var/lib/ftp/telio_tortay"; + env = myconfig.env.websites.telioTortay; +in { + options.myServices.websites.telioTortay.production.enable = lib.mkEnableOption "enable Telio Tortay's website"; + + config = lib.mkIf cfg.enable { + services.webstats.sites = [ { name = "telio-tortay.immae.eu"; } ]; + + security.acme.certs."ftp".extraDomains."telio-tortay.immae.eu" = null; + + system.activationScripts.telio-tortay = { + deps = [ "httpd" ]; + text = '' + install -m 0755 -o wwwrun -g wwwrun -d /var/lib/ftp/telio_tortay/logs + install -m 0755 -o wwwrun -g wwwrun -d /var/lib/php/sessions/telio-tortay + ''; + }; + systemd.services.phpfpm-telio-tortay.after = lib.mkAfter [ "mysql.service" ]; + systemd.services.phpfpm-telio-tortay.wants = [ "mysql.service" ]; + services.phpfpm.pools.telio-tortay = { + listen = "/run/phpfpm/telio-tortay.sock"; + extraConfig = '' + user = wwwrun + group = wwwrun + listen.owner = wwwrun + listen.group = wwwrun + + pm = ondemand + pm.max_children = 5 + pm.process_idle_timeout = 60 + + php_admin_value[open_basedir] = "/var/lib/php/sessions/telio-tortay:${varDir}:/tmp" + php_admin_value[session.save_path] = "/var/lib/php/sessions/telio-tortay" + ''; + phpOptions = config.services.phpfpm.phpOptions + '' + disable_functions = "mail" + extension=${pkgs.php}/lib/php/extensions/mysqli.so + ''; + }; + services.websites.env.production.modules = adminer.apache.modules ++ [ "proxy_fcgi" ]; + services.websites.env.production.vhostConfs.telio-tortay = { + certName = "telio-tortay"; + certMainHost = "telio-tortay.immae.eu"; + hosts = ["telio-tortay.immae.eu" "os-tv.fr" ]; + root = varDir; + extraConfig = [ + adminer.apache.vhostConf + '' + Use Stats telio-tortay.immae.eu + ServerAdmin ${env.server_admin} + ErrorLog "${varDir}/logs/error_log" + CustomLog "${varDir}/logs/access_log" combined + + + SetHandler "proxy:unix:/run/phpfpm/telio-tortay.sock|fcgi://localhost" + + + + AllowOverride None + Require all denied + + + DirectoryIndex index.php index.htm index.html + Options Indexes FollowSymLinks MultiViews Includes + AllowOverride all + Require all granted + + '' + ]; + }; + }; +}