aboutsummaryrefslogtreecommitdiff
path: root/modules/services/nixos/mkCaddyCfg.nix
blob: 770b4d0f43ff16e93e8d11ea3e17fc07dccf2030 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
cfg: {
  networking.extraHosts =
    if cfg.privateUrl != null
    then ''
      127.0.0.1 ${cfg.privateUrl}
    ''
    else "";

  services.caddy.virtualHosts =
    (
      if cfg.publicUrl != null
      then {
        ${cfg.publicUrl}.extraConfig = ''
          reverse_proxy ${cfg.listenAddr}:${toString cfg.port}
        '';
      }
      else {}
    )
    // (
      if cfg.privateUrl != null
      then {
        "${cfg.privateUrl}".extraConfig = ''
          tls internal
          reverse_proxy ${cfg.listenAddr}:${toString cfg.port}
        '';
      }
      else {}
    );
}