[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
02/09: services: nginx: Add 'shepherd-requirement' configuration field.
From: |
guix-commits |
Subject: |
02/09: services: nginx: Add 'shepherd-requirement' configuration field. |
Date: |
Tue, 6 Sep 2022 11:00:08 -0400 (EDT) |
civodul pushed a commit to branch master
in repository guix.
commit 8c5065c6d1036012996e4812788e48ca74bc1294
Author: Ludovic Courtès <ludo@gnu.org>
AuthorDate: Tue Sep 6 16:12:56 2022 +0200
services: nginx: Add 'shepherd-requirement' configuration field.
* gnu/services/web.scm (<nginx-configuration>)[shepherd-requirement]:
New field.
(nginx-shepherd-service): Honor it.
* doc/guix.texi (Web Services): Document it.
---
doc/guix.texi | 8 ++++++++
gnu/services/web.scm | 7 +++++--
2 files changed, 13 insertions(+), 2 deletions(-)
diff --git a/doc/guix.texi b/doc/guix.texi
index d573695e72..20abfee772 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -28841,6 +28841,14 @@ types, or alternatively, a config file can be provided.
@item @code{nginx} (default: @code{nginx})
The nginx package to use.
+@item @code{shepherd-requirement} (default: @code{'()})
+This is a list of symbols naming Shepherd services the nginx service
+will depend on.
+
+This is useful if you would like @command{nginx} to be started after a
+back-end web server or a logging service such as Anonip has been
+started.
+
@item @code{log-directory} (default: @code{"/var/log/nginx"})
The directory to which NGinx will write log files.
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index f0c7e90cbf..b144cf7076 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -93,6 +93,7 @@
nginx-configuration
nginx-configuration?
nginx-configuration-nginx
+ nginx-configuration-shepherd-requirement
nginx-configuration-log-directory
nginx-configuration-run-directory
nginx-configuration-server-blocks
@@ -556,6 +557,8 @@
nginx-configuration?
(nginx nginx-configuration-nginx ;file-like
(default nginx))
+ (shepherd-requirement nginx-configuration-shepherd-requirement
+ (default '())) ;list of symbols
(log-directory nginx-configuration-log-directory ;string
(default "/var/log/nginx"))
(run-directory nginx-configuration-run-directory ;string
@@ -779,7 +782,7 @@ of index files."
(define (nginx-shepherd-service config)
(match-record config
<nginx-configuration>
- (nginx file run-directory)
+ (nginx file run-directory shepherd-requirement)
(let* ((nginx-binary (file-append nginx "/sbin/nginx"))
(pid-file (in-vicinity run-directory "pid"))
(nginx-action
@@ -803,7 +806,7 @@ of index files."
(list (shepherd-service
(provision '(nginx))
(documentation "Run the nginx daemon.")
- (requirement '(user-processes loopback))
+ (requirement `(user-processes loopback ,@shepherd-requirement))
(modules `((ice-9 match)
,@%default-modules))
(start (nginx-action "-p" run-directory))
- branch master updated (0f2776399e -> be810d414f), guix-commits, 2022/09/06
- 02/09: services: nginx: Add 'shepherd-requirement' configuration field.,
guix-commits <=
- 03/09: gnu: Add neovim-packer., guix-commits, 2022/09/06
- 07/09: gnu: git: Update to 2.37.3., guix-commits, 2022/09/06
- 09/09: gnu: orange: Fix QT_PLUGIN_PATH., guix-commits, 2022/09/06
- 01/09: import: gnome: Do not require even minor for two-number version strings., guix-commits, 2022/09/06
- 04/09: gnu: Add go-github-com-disintegration-imaging., guix-commits, 2022/09/06
- 05/09: gnu: Add pixterm., guix-commits, 2022/09/06
- 06/09: gnu: Add blueprint-compiler., guix-commits, 2022/09/06
- 08/09: gnu: src: Update to 1.29., guix-commits, 2022/09/06