diff options
Diffstat (limited to 'modules/by-name/ng/nginx')
| -rw-r--r-- | modules/by-name/ng/nginx/module.nix | 83 |
1 files changed, 0 insertions, 83 deletions
diff --git a/modules/by-name/ng/nginx/module.nix b/modules/by-name/ng/nginx/module.nix deleted file mode 100644 index 1317d4d..0000000 --- a/modules/by-name/ng/nginx/module.nix +++ /dev/null @@ -1,83 +0,0 @@ -{ - lib, - config, - ... -}: let - mkRedirect = _: value: { - forceSSL = true; - enableACME = true; - locations."/".return = "301 ${value}$request_uri"; - }; - - redirects = builtins.mapAttrs mkRedirect cfg.redirects; - - cfg = config.vhack.nginx; -in { - options.vhack.nginx = { - enable = lib.mkEnableOption '' - a default nginx config. - ''; - - redirects = lib.mkOption { - type = lib.types.attrsOf lib.types.str; - default = {}; - description = '' - An attrset of redirects to add. - The keys are the domain that should than be redirected to the url specified as - value. - ''; - }; - }; - - config = lib.mkIf cfg.enable { - vhack = { - persist.directories = [ - "/var/lib/acme" - ]; - - monitoring.prometheus = { - sources = [ - { - name = "nginx"; - target = "127.0.0.1:${toString config.services.prometheus.exporters.nginx.port}"; - } - ]; - }; - }; - - services.prometheus.exporters.nginx = { - enable = true; - port = 9111; - listenAddress = "127.0.0.1"; - scrapeUri = "http://localhost:80/nginx_status"; - }; - - users = { - users.acme = { - uid = config.vhack.constants.ids.uids.acme; - group = "acme"; - }; - groups.acme.gid = config.vhack.constants.ids.gids.acme; - }; - - security.acme = { - acceptTerms = true; - defaults = { - email = "admin@vhack.eu"; - webroot = "/var/lib/acme/acme-challenge"; - }; - }; - - networking.firewall = { - allowedTCPPorts = [80 443]; - }; - services.nginx = { - enable = true; - - # Enable the status page for the prometheus exporter. - statusPage = lib.mkIf config.services.prometheus.enable true; - - virtualHosts = redirects; - }; - }; -} |
