summary refs log tree commit diff
path: root/gnu/services
diff options
context:
space:
mode:
authorBruno Victal <mirai@makinata.eu>2023-04-03 12:58:03 +0100
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-04-11 12:19:01 -0400
commit337e681b7a312b6910725ba553918a6a2e442f89 (patch)
treeaa160157837961ab8aaaac6b7f91f6ab043458f8 /gnu/services
parentdd10ba41847fbe0251bd3cc7ffc7bb640cca7e84 (diff)
downloadguix-337e681b7a312b6910725ba553918a6a2e442f89.tar.gz
services: nginx: Add reopen action.
This is required to allow log file rotations using rottlog, etc.

* gnu/services/web.scm (nginx-shepherd-service): Add reopen shepherd action.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/web.scm6
1 files changed, 5 insertions, 1 deletions
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index 4fe9c2d9ab..45897d7d6f 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -840,7 +840,11 @@ This has the effect of killing old worker processes and starting new ones, using
 the same configuration file.  It is useful for situations where the same nginx
 configuration file can point to different things after a reload, such as
 renewed TLS certificates, or @code{include}d files.")
-                 (procedure (nginx-action "-s" "reload"))))))))))
+                 (procedure (nginx-action "-s" "reload")))
+               (shepherd-action
+                (name 'reopen)
+                (documentation "Re-open log files.")
+                (procedure (nginx-action "-s" "reopen"))))))))))
 
 (define nginx-service-type
   (service-type (name 'nginx)