services: cuirass: Improve simple-cuirass-services.

Instead of returning multiple services in simple-cuirass-services, rely on the
instantiate-missing-services procedure to instantiate postgresql and
postgresql-role-service-type when missing.

Turn simple-cuirass-services procedure into
simple-cuirass-configuration->specs, that takes a simple-cuirass-configuration
record and returns a Cuirass specification.

Suggested-by: Ludovic Courtès <ludo@gnu.org>

* gnu/services/cuirass.scm (%default-cuirass-config): Remove it.
(simple-cuirass-services): Rename it to ...
(simple-cuirass-configuration->specs): ... this procedure.
* gnu/tests/cuirass.scm (cuirass-services): Remove postgresql and
postgresql-role services that are automatically instantiated.
(simple-cuirass-service): New variable.
(%cuirass-simple-test): Adapt it to use simple-cuirass-configuration->specs
instead of simple-cuirass-services.
* doc/guix.texi (Simple Cuirass): Update it.
This commit is contained in:
Mathieu Othacehe 2021-02-22 15:41:06 +01:00
parent 602f86d60b
commit bebcf97600
No known key found for this signature in database
GPG key ID: 8354763531769CA6
3 changed files with 55 additions and 60 deletions

View file

@ -60,8 +60,7 @@
simple-cuirass-configuration
simple-cuirass-configuration?
%default-cuirass-config
simple-cuirass-services))
simple-cuirass-configuration->specs))
;;;; Commentary:
;;;
@ -419,13 +418,7 @@ CONFIG."
(systems simple-cuirass-configuration-systems
(default (list (%current-system))))) ;list of strings
(define %default-cuirass-config
(cuirass-configuration
(specifications #~())))
(define* (simple-cuirass-services config
#:optional
(cuirass %default-cuirass-config))
(define* (simple-cuirass-configuration->specs config)
(define (format-name name)
(if (string? name)
name
@ -475,13 +468,4 @@ CONFIG."
(#:build-outputs . ())
(#:priority . 1))))
(list
(service cuirass-service-type
(cuirass-configuration
(inherit cuirass)
(specifications #~(list
'#$(config->spec config)))))
(service postgresql-service-type
(postgresql-configuration
(postgresql postgresql-10)))
(service postgresql-role-service-type)))
#~(list '#$(config->spec config)))