diff --git a/modules/server/caddy.nix b/modules/server/caddy.nix index 1f9e286..5f91f40 100644 --- a/modules/server/caddy.nix +++ b/modules/server/caddy.nix @@ -11,11 +11,35 @@ }; config = { - systemd.services.caddy.serviceConfig.Restart = lib.mkForce "always"; + systemd = { + services = { + caddy.serviceConfig.Restart = lib.mkForce "always"; + clear-caddy-logs = { + description = "Delete /var/log/caddy and restart Caddy (monthly)"; + serviceConfig.Type = "oneshot"; + + script = "rm -rf /var/log/caddy"; + postStop = "systemctl restart caddy"; + }; + }; + + timers.clear-caddy-logs = { + description = "Monthly Caddy log reset"; + wantedBy = [ "timers.target" ]; + + timerConfig = { + OnCalendar = "*-*-01 00:00:00"; + Persistent = true; + Unit = "clear-caddy-logs.service"; + }; + }; + }; + networking.firewall.allowedTCPPorts = [ 80 443 ]; + services.caddy = { enable = true; email = "henry@henryhiles.com";