Subject: [PATCH] services: web: Pass run-directory to nginx's actions.

From: Tomas Volf <[email-masked]>
Date: Fri, 5 Jul 2024 17:01:20 +0200

Reloading nginx lead to (harmless, yet annoying) alert being logged:

    nginx: [alert] could not open error log file: open() "/gnu/store/9l2lznlqpjcm79znq1xas378maqgysc8-nginx-1.27.0/logs/error.log" failed (2: No such file or directory)

Since there already is prepared runtime directory for nginx, all that was
missing was to also pass it to the reload and reopen invocations.

* gnu/services/web.scm (nginx-shepherd-service)[reload, reopen]: Pass -p flag
with run-directory as value.

Change-Id: Id5c558d65def8c1fe5cf581a4a370508ac05e550
---
 gnu/services/web.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index c10bd4cdff..b73cd30fe7 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -858,11 +858,11 @@ (define (nginx-shepherd-service config)
 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 "-p" run-directory "-s" "reload")))
                (shepherd-action
                 (name 'reopen)
                 (documentation "Re-open log files.")
-                (procedure (nginx-action "-s" "reopen"))))))))))
+                (procedure (nginx-action "-p" run-directory "-s" "reopen"))))))))))
 
 (define nginx-service-type
   (service-type (name 'nginx)
-- 
2.45.1