From 9a35b8f94cc55ee429b36be1a5e7eb1f52934a34 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Isma=C3=ABl=20Bouya?= Date: Tue, 29 Jan 2019 23:42:06 +0100 Subject: [PATCH] =?utf8?q?Move=20=C3=89milia's=20website?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- nixops/modules/websites/default.nix | 2 + nixops/modules/websites/emilia/default.nix | 73 +++++++++++++++++++ .../modules/websites/emilia/moodle/pause.html | 48 ++++++++++++ 3 files changed, 123 insertions(+) create mode 100644 nixops/modules/websites/emilia/default.nix create mode 100644 nixops/modules/websites/emilia/moodle/pause.html diff --git a/nixops/modules/websites/default.nix b/nixops/modules/websites/default.nix index 4a6a26f..7bd1ac5 100644 --- a/nixops/modules/websites/default.nix +++ b/nixops/modules/websites/default.nix @@ -91,6 +91,7 @@ in ./piedsjaloux ./connexionswing ./tellesflorian + ./emilia ./ftp/jerome.nix ./ftp/nassime.nix ./ftp/florian.nix @@ -195,6 +196,7 @@ in services.myWebsites.Nassime.production.enable = cfg.production.enable; services.myWebsites.Florian.production.enable = cfg.production.enable; services.myWebsites.DeniseJerome.production.enable = cfg.production.enable; + services.myWebsites.Emilia.production.enable = cfg.production.enable; services.myWebsites.Chloe.integration.enable = cfg.integration.enable; services.myWebsites.Ludivine.integration.enable = cfg.integration.enable; diff --git a/nixops/modules/websites/emilia/default.nix b/nixops/modules/websites/emilia/default.nix new file mode 100644 index 0000000..5783ed0 --- /dev/null +++ b/nixops/modules/websites/emilia/default.nix @@ -0,0 +1,73 @@ +{ lib, pkgs, config, myconfig, mylibs, ... }: +let + cfg = config.services.myWebsites.Emilia; + env = myconfig.env.websites.emilia; + varDir = "/var/lib/moodle"; + siteDir = ./moodle; + # php_admin_value[upload_max_filesize] = 50000000 + # php_admin_value[post_max_size] = 50000000 + configFile = '' + dbtype = 'pgsql'; + $CFG->dblibrary = 'native'; + $CFG->dbhost = '${env.postgresql.host}'; + $CFG->dbname = '${env.postgresql.database}'; + $CFG->dbuser = '${env.postgresql.user}'; + $CFG->dbpass = '${env.postgresql.password}'; + $CFG->prefix = 'mdl_'; + $CFG->dboptions = array ( + 'dbpersist' => 0, + 'dbport' => '${env.postgreesql.port}', + 'dbsocket' => '${env.postgresql.password}', + ); + + $CFG->wwwroot = 'https://www.saison-photo.org'; + $CFG->dataroot = '${varDir}'; + $CFG->admin = 'admin'; + + $CFG->directorypermissions = 02777; + + require_once(__DIR__ . '/lib/setup.php'); + + // There is no php closing tag in this file, + // it is intentional because it prevents trailing whitespace problems! + ''; +in { + options.services.myWebsites.Emilia = { + production = { + enable = lib.mkEnableOption "enable Emilia's website"; + }; + }; + + config = lib.mkIf cfg.production.enable { + security.acme.certs."emilia" = config.services.myCertificates.certConfig // { + domain = "saison-photo.org"; + extraDomains = { + "www.saison-photo.org" = null; + }; + }; + + system.activationScripts.emilia = '' + install -m 0755 -o wwwrun -g wwwrun -d ${varDir} + ''; + services.myWebsites.production.vhostConfs.emilia = { + certName = "emilia"; + hosts = [ "saison-photo.org" "www.saison-photo.org" ]; + root = siteDir; + extraConfig = [ + '' + + DirectoryIndex pause.html + Options Indexes FollowSymLinks MultiViews Includes + Require all granted + + '' + ]; + }; + }; +} diff --git a/nixops/modules/websites/emilia/moodle/pause.html b/nixops/modules/websites/emilia/moodle/pause.html new file mode 100644 index 0000000..8b99c59 --- /dev/null +++ b/nixops/modules/websites/emilia/moodle/pause.html @@ -0,0 +1,48 @@ + + + + Pause + + + + +
+

Site web en pause !

+
+

Le site et les cours de photographie sont actuellement en pause.

+
+
+ + -- 2.41.0