services: hpcguix-web: Add ‘configuration’ action.

* gnu/services/web.scm (hpcguix-web-shepherd-service): Define
‘config-file’ and use it.  Add ‘actions’ field.

Change-Id: I085df403270039ede3c13f21a5d60682c7510e2e
This commit is contained in:
Ludovic Courtès 2023-12-14 22:31:37 +01:00
parent 1de1b975be
commit 4017555367
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -1229,7 +1229,8 @@ (define %hpcguix-web-log-rotations
(frequency 'weekly))))
(define (hpcguix-web-shepherd-service config)
(let ((specs (hpcguix-web-configuration-specs config))
(let* ((specs (hpcguix-web-configuration-specs config))
(config-file (and specs (scheme-file "hpcguix-web.scm" specs)))
(hpcguix-web (hpcguix-web-package config)))
(with-imported-modules (source-module-closure
'((gnu build shepherd)))
@ -1246,9 +1247,7 @@ (define (hpcguix-web-shepherd-service config)
#$(number->string
(hpcguix-web-configuration-port config))
#$@(if specs
#~((string-append "--config="
#$(scheme-file
"hpcguix-web.scm" specs)))
#~((string-append "--config=" #$config-file))
#~()))
#:user "hpcguix-web"
#:group "hpcguix-web"
@ -1256,7 +1255,8 @@ (define (hpcguix-web-shepherd-service config)
(list "XDG_CACHE_HOME=/var/cache/guix/web"
"SSL_CERT_DIR=/etc/ssl/certs")
#:log-file #$%hpcguix-web-log-file))
(stop #~(make-kill-destructor))))))
(stop #~(make-kill-destructor))
(actions (list (shepherd-configuration-action config-file)))))))
(define hpcguix-web-service-type
(service-type