]> git.immae.eu Git - perso/Immae/Config/Nix.git/blob - nixops/modules/websites/tellesflorian/default.nix
Add missing service dependencies
[perso/Immae/Config/Nix.git] / nixops / modules / websites / tellesflorian / default.nix
1 { lib, pkgs, config, myconfig, mylibs, ... }:
2 let
3 adminer = pkgs.callPackage ../commons/adminer.nix {};
4
5 tellesflorian = pkgs.callPackage ./tellesflorian.nix { inherit (mylibs) fetchedGitPrivate; };
6 tellesflorian_dev = tellesflorian {
7 config = myconfig.env.websites.tellesflorian.integration;
8 };
9
10 cfg = config.services.myWebsites.TellesFlorian;
11 in {
12 options.services.myWebsites.TellesFlorian = {
13 integration = {
14 enable = lib.mkEnableOption "enable Florian Telles's website in integration";
15 };
16 };
17
18 config = lib.mkIf cfg.integration.enable {
19 deployment.keys = tellesflorian_dev.keys;
20 security.acme.certs."eldiron".extraDomains."app.tellesflorian.com" = null;
21 services.myPhpfpm.serviceDependencies.tellesflorian_dev = tellesflorian_dev.phpFpm.serviceDeps;
22 services.myPhpfpm.poolConfigs.tellesflorian_dev = tellesflorian_dev.phpFpm.pool;
23 system.activationScripts.tellesflorian_dev = tellesflorian_dev.activationScript;
24 system.extraSystemBuilderCmds = ''
25 mkdir -p $out/webapps
26 ln -s ${tellesflorian_dev.webRoot} $out/webapps/${tellesflorian_dev.apache.webappName}
27 '';
28 services.myWebsites.integration.modules = adminer.apache.modules ++ tellesflorian_dev.apache.modules;
29 services.myWebsites.integration.vhostConfs.tellesflorian = {
30 certName = "eldiron";
31 hosts = ["app.tellesflorian.com" ];
32 root = tellesflorian_dev.apache.root;
33 extraConfig = [
34 tellesflorian_dev.apache.vhostConf
35 adminer.apache.vhostConf
36 ];
37 };
38 };
39 }