M doc/guix.texi => doc/guix.texi +13 -1
@@ 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
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})
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)
Duration in seconds after which pending builds are canceled. This helps
ensure that the backlog does not grow indefinitely.
@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})
Read parameters from the given @var{parameters} file. The supported
M gnu/services/cuirass.scm => gnu/services/cuirass.scm +25 -1
@@ 101,12 101,18 @@
(default "cuirass"))
(interval cuirass-configuration-interval ;integer (seconds)
(default 300))
- (ttl cuirass-configuration-ttl ;integer
+ (parallel-evaluations cuirass-configuration-parallel-evaluations
+ (default #f)) ;integer | #f
+ (ttl cuirass-configuration-ttl ;integer
(default 2592000))
+ (evaluation-ttl cuirass-configuration-evaluation-ttl
+ (default (* 24 30 24 3600))) ;integer (seconds)
(build-expiry cuirass-configuration-build-expiry
(default (* 4 30 24 3600))) ;integer(seconds)
(threads cuirass-configuration-threads ;integer
(default #f))
+ (web-threads cuirass-configuration-web-threads ;integer | #f
+ (default #f))
(parameters cuirass-configuration-parameters ;string
(default #f))
(remote-server cuirass-configuration-remote-server
@@ 145,9 151,12 @@
(user (cuirass-configuration-user config))
(group (cuirass-configuration-group config))
(interval (cuirass-configuration-interval config))
+ (parallel-evaluations (cuirass-configuration-parallel-evaluations config))
(ttl (cuirass-configuration-ttl config))
+ (evaluation-ttl (cuirass-configuration-evaluation-ttl config))
(build-expiry (cuirass-configuration-build-expiry config))
(threads (cuirass-configuration-threads config))
+ (web-threads (cuirass-configuration-web-threads config))
(parameters (cuirass-configuration-parameters config))
(remote-server (cuirass-configuration-remote-server config))
(database (cuirass-configuration-database config))
@@ 173,12 182,23 @@
"--specifications" #$config-file
"--database" #$database
"--interval" #$(number->string interval)
+ #$@(if parallel-evaluations
+ (list (string-append
+ "--parallel-evaluations="
+ (number->string evaluation-ttl)))
+ '())
#$@(if ttl
(list (string-append
"--ttl="
(number->string ttl)
"s"))
'())
+ #$@(if evaluation-ttl
+ (list (string-append
+ "--evaluation-ttl="
+ (number->string evaluation-ttl)
+ "s"))
+ '())
#$@(if build-expiry
(list (string-append
"--build-expiry="
@@ 232,6 252,10 @@
"--database" #$database
"--listen" #$host
"--port" #$(number->string port)
+ #$@(if web-threads
+ (list #~(string-append "--threads="
+ #$web-threads))
+ '())
#$@(if parameters
(list #~(string-append "--parameters="
#$parameters))
M gnu/system/examples/bare-bones.tmpl => gnu/system/examples/bare-bones.tmpl +10 -4
@@ 3,8 3,8 @@
;; for a "bare bones" setup, with no X11 display server.
(use-modules (gnu))
-(use-service-modules networking ssh)
-(use-package-modules screen ssh)
+(use-service-modules cuirass networking ssh databases)
+(use-package-modules databases screen ssh)
(operating-system
(host-name "komputilo")
@@ 48,8 48,14 @@
;; Add services to the baseline: a DHCP client and an SSH
;; server. You may wish to add an NTP service here.
(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
(openssh-configuration
- (openssh openssh-sans-x)
- (port-number 2222))))
+ (openssh openssh-sans-x)
+ (port-number 2222))))
%base-services)))