mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 13:10:33 +02:00
services: cuirass: Add more configuration fields.
* gnu/services/cuirass.scm (<cuirass-configuration>)[parallel-evaluations] [evaluation-ttl, web-threads]: New fields. (cuirass-shepherd-service): Honor them. * doc/guix.texi (Continuous Integration): Document them. Change-Id: I33485b978d2a37ee93230b1d425731e6cb3b80e4
This commit is contained in:
@@ -37863,15 +37863,27 @@ Note that individual jobset specifications may override this in their
|
|||||||
@code{period} field; the value specified here is only used for
|
@code{period} field; the value specified here is only used for
|
||||||
specifications that use the default @code{period} value, which is zero.
|
specifications that use the default @code{period} value, which is zero.
|
||||||
|
|
||||||
|
@item @code{parallel-evaluations} (default: @code{#f})
|
||||||
|
Maximum number of jobset evaluations that may run concurrently. If
|
||||||
|
@code{#f}, that number is determined based on a number of CPU cores,
|
||||||
|
with an upper bound of 8.
|
||||||
|
|
||||||
@item @code{ttl} (default: @code{2592000})
|
@item @code{ttl} (default: @code{2592000})
|
||||||
Duration to keep build results' GC roots alive, in seconds.
|
Duration to keep build results' GC roots alive, in seconds.
|
||||||
|
|
||||||
|
@item @code{evaluation-ttl} (default: 24 months)
|
||||||
|
Number of seconds after which an evaluation may be deleted from the
|
||||||
|
database.
|
||||||
|
|
||||||
@item @code{build-expiry} (default: 4 months)
|
@item @code{build-expiry} (default: 4 months)
|
||||||
Duration in seconds after which pending builds are canceled. This helps
|
Duration in seconds after which pending builds are canceled. This helps
|
||||||
ensure that the backlog does not grow indefinitely.
|
ensure that the backlog does not grow indefinitely.
|
||||||
|
|
||||||
@item @code{threads} (default: @code{#f})
|
@item @code{threads} (default: @code{#f})
|
||||||
Number of kernel threads to use for Cuirass. The default value should be appropriate for most cases.
|
@itemx @code{web-threads} (default: @code{#f})
|
||||||
|
Number of kernel threads to use for Cuirass (main process) and for the
|
||||||
|
web interface (the @command{cuirass web} program). The default value
|
||||||
|
should be appropriate for most cases.
|
||||||
|
|
||||||
@item @code{parameters} (default: @code{#f})
|
@item @code{parameters} (default: @code{#f})
|
||||||
Read parameters from the given @var{parameters} file. The supported
|
Read parameters from the given @var{parameters} file. The supported
|
||||||
|
|||||||
@@ -101,12 +101,18 @@
|
|||||||
(default "cuirass"))
|
(default "cuirass"))
|
||||||
(interval cuirass-configuration-interval ;integer (seconds)
|
(interval cuirass-configuration-interval ;integer (seconds)
|
||||||
(default 300))
|
(default 300))
|
||||||
(ttl cuirass-configuration-ttl ;integer
|
(parallel-evaluations cuirass-configuration-parallel-evaluations
|
||||||
|
(default #f)) ;integer | #f
|
||||||
|
(ttl cuirass-configuration-ttl ;integer
|
||||||
(default 2592000))
|
(default 2592000))
|
||||||
|
(evaluation-ttl cuirass-configuration-evaluation-ttl
|
||||||
|
(default (* 24 30 24 3600))) ;integer (seconds)
|
||||||
(build-expiry cuirass-configuration-build-expiry
|
(build-expiry cuirass-configuration-build-expiry
|
||||||
(default (* 4 30 24 3600))) ;integer(seconds)
|
(default (* 4 30 24 3600))) ;integer(seconds)
|
||||||
(threads cuirass-configuration-threads ;integer
|
(threads cuirass-configuration-threads ;integer
|
||||||
(default #f))
|
(default #f))
|
||||||
|
(web-threads cuirass-configuration-web-threads ;integer | #f
|
||||||
|
(default #f))
|
||||||
(parameters cuirass-configuration-parameters ;string
|
(parameters cuirass-configuration-parameters ;string
|
||||||
(default #f))
|
(default #f))
|
||||||
(remote-server cuirass-configuration-remote-server
|
(remote-server cuirass-configuration-remote-server
|
||||||
@@ -145,9 +151,12 @@
|
|||||||
(user (cuirass-configuration-user config))
|
(user (cuirass-configuration-user config))
|
||||||
(group (cuirass-configuration-group config))
|
(group (cuirass-configuration-group config))
|
||||||
(interval (cuirass-configuration-interval config))
|
(interval (cuirass-configuration-interval config))
|
||||||
|
(parallel-evaluations (cuirass-configuration-parallel-evaluations config))
|
||||||
(ttl (cuirass-configuration-ttl config))
|
(ttl (cuirass-configuration-ttl config))
|
||||||
|
(evaluation-ttl (cuirass-configuration-evaluation-ttl config))
|
||||||
(build-expiry (cuirass-configuration-build-expiry config))
|
(build-expiry (cuirass-configuration-build-expiry config))
|
||||||
(threads (cuirass-configuration-threads config))
|
(threads (cuirass-configuration-threads config))
|
||||||
|
(web-threads (cuirass-configuration-web-threads config))
|
||||||
(parameters (cuirass-configuration-parameters config))
|
(parameters (cuirass-configuration-parameters config))
|
||||||
(remote-server (cuirass-configuration-remote-server config))
|
(remote-server (cuirass-configuration-remote-server config))
|
||||||
(database (cuirass-configuration-database config))
|
(database (cuirass-configuration-database config))
|
||||||
@@ -173,12 +182,23 @@
|
|||||||
"--specifications" #$config-file
|
"--specifications" #$config-file
|
||||||
"--database" #$database
|
"--database" #$database
|
||||||
"--interval" #$(number->string interval)
|
"--interval" #$(number->string interval)
|
||||||
|
#$@(if parallel-evaluations
|
||||||
|
(list (string-append
|
||||||
|
"--parallel-evaluations="
|
||||||
|
(number->string evaluation-ttl)))
|
||||||
|
'())
|
||||||
#$@(if ttl
|
#$@(if ttl
|
||||||
(list (string-append
|
(list (string-append
|
||||||
"--ttl="
|
"--ttl="
|
||||||
(number->string ttl)
|
(number->string ttl)
|
||||||
"s"))
|
"s"))
|
||||||
'())
|
'())
|
||||||
|
#$@(if evaluation-ttl
|
||||||
|
(list (string-append
|
||||||
|
"--evaluation-ttl="
|
||||||
|
(number->string evaluation-ttl)
|
||||||
|
"s"))
|
||||||
|
'())
|
||||||
#$@(if build-expiry
|
#$@(if build-expiry
|
||||||
(list (string-append
|
(list (string-append
|
||||||
"--build-expiry="
|
"--build-expiry="
|
||||||
@@ -232,6 +252,10 @@
|
|||||||
"--database" #$database
|
"--database" #$database
|
||||||
"--listen" #$host
|
"--listen" #$host
|
||||||
"--port" #$(number->string port)
|
"--port" #$(number->string port)
|
||||||
|
#$@(if web-threads
|
||||||
|
(list #~(string-append "--threads="
|
||||||
|
#$web-threads))
|
||||||
|
'())
|
||||||
#$@(if parameters
|
#$@(if parameters
|
||||||
(list #~(string-append "--parameters="
|
(list #~(string-append "--parameters="
|
||||||
#$parameters))
|
#$parameters))
|
||||||
|
|||||||
@@ -3,8 +3,8 @@
|
|||||||
;; for a "bare bones" setup, with no X11 display server.
|
;; for a "bare bones" setup, with no X11 display server.
|
||||||
|
|
||||||
(use-modules (gnu))
|
(use-modules (gnu))
|
||||||
(use-service-modules networking ssh)
|
(use-service-modules cuirass networking ssh databases)
|
||||||
(use-package-modules screen ssh)
|
(use-package-modules databases screen ssh)
|
||||||
|
|
||||||
(operating-system
|
(operating-system
|
||||||
(host-name "komputilo")
|
(host-name "komputilo")
|
||||||
@@ -48,8 +48,14 @@
|
|||||||
;; Add services to the baseline: a DHCP client and an SSH
|
;; Add services to the baseline: a DHCP client and an SSH
|
||||||
;; server. You may wish to add an NTP service here.
|
;; server. You may wish to add an NTP service here.
|
||||||
(services (append (list (service dhcpcd-service-type)
|
(services (append (list (service dhcpcd-service-type)
|
||||||
|
(service cuirass-service-type
|
||||||
|
(cuirass-configuration
|
||||||
|
(specifications #~(list))))
|
||||||
|
(service postgresql-service-type
|
||||||
|
(postgresql-configuration
|
||||||
|
(postgresql postgresql-14)))
|
||||||
(service openssh-service-type
|
(service openssh-service-type
|
||||||
(openssh-configuration
|
(openssh-configuration
|
||||||
(openssh openssh-sans-x)
|
(openssh openssh-sans-x)
|
||||||
(port-number 2222))))
|
(port-number 2222))))
|
||||||
%base-services)))
|
%base-services)))
|
||||||
|
|||||||
Reference in New Issue
Block a user