* hydra/modules/sysadmin/services.scm (cuirass-without-fiber-tests)[inputs]:
Use "guile-3.0/libgc-7" instead of "guile" to workaround libgc memory issues.
This is a followup to Guix commit
0996fcc657593955845c2761d7eb0f656149fe11.
* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots): Add
".iso" suffix.
* hydra/modules/sysadmin/services.scm (disk-space-check)
(disk-space-mcron-jobs, disk-space-watchdog-service-type): New
variables.
* hydra/berlin.scm <services>: Use it.
* hydra/modules/sysadmin/services.scm (%goggles-irc-log-directory): New
varaible.
(%goggles-activation): Create it and chmod it.
(goggles-shepherd-services): Add it to #:mappings.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Set iso9660-image build
output type to "ISO-9660". It will now be displayed by Cuirass in the Web
interface.
Cuirass recently gained build output support. This means that it is possible
to indicate from the specifications which files from a job output should be
made available for download via the Web UI.
Use it to make ISO9660 images available for download.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add build-outputs
support.
Support selecting specifications by branch, so that Bayfront can be
configured only to build master.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Support
selecting specifications by branch.
(frontend-services): Add a #:branches parameter, and pass this to
cuirass-specs.
* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots): Add
iso9660-image derivations to clean-up.
This is a follow-up of f19cf27c2b9ff92e2c0fd931ef7fde39c376adaa0..
So that bayfront can have more build accounts.
* hydra/modules/sysadmin/services.scm (guix-daemon-config): Add
#:build-accounts-to-max-jobs-ratio as a parameter.
(frontend-services): Add #:build-accounts-to-max-jobs-ratio as a
parameter, and pass the value to guix-daemon-config.
* hydra/modules/sysadmin/services.scm (not-config?): New procedure.
(cleanup-cuirass-roots): Wrap gexp in 'with-extensions' and
'with-imported-modules'.
[root-target, derivation-referrers, delete-gc-root-for-derivation]: New
procedures. Delete GC roots for the referrers of DELETED.
Arguments to 'file-system-fold' now preserve RESULT.
* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots)[handle-gc-root]:
Rename last argument to 'deleted'. Cons FILE to DELETED when it's
actually deleted.
[deleted]: New variable.
Iterate over it to create "/gnu/big-stuff".
Reported by Christopher Baines <mail@cbaines.net>.
* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots):
Remove *-installation in addition to *-disk-image.
* hydra/modules/sysadmin/services.scm (guix-daemon-config): Set
'build-accounts' to 4 times MAX-JOBS. Bayfront without offloading was
hitting its max number of build users.
These were unused since commit
a94e1be874.
* hydra/nginx/berlin-locations.conf,
hydra/nginx/berlin.conf: Remove.
* hydra/modules/sysadmin/services.scm (frontend-services): Add
NGINX-SERVICE-TYPE only when NGINX-CONFIG-FILE is true.
* hydra/berlin.scm (services): Remove #:nginx-config-file argument to
'frontend-services'.
This is a followup to Guix commit
b5f8c2c88543158e8aca76aa98f9009f6b9e743a. Since evaluation now takes
place in an inferior, it's important that the Guix that builds that
inferior has no interference from the Guix-to-build; IOW, we must not
add the Guix-to-build to the load path. Failing to do that can lead to
errors such as patches not found, due to a faulty %PATCH-PATH that
refers to the Guix-to-build.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Set
#:load-path-inputs to the empty list for all the job sets.
* hydra/modules/sysadmin/services.scm (frontend-services): Increase
default NAR-TTL to 90 days. See Cuirass 'ttl' to a third of NAR-TTL.
* hydra/bayfront.scm: Pass #:nar-ttl to 'frontend-services'.
"build-aux/cuirass/guix-modular.scm" is designed to *not* rely on the
latest Guix modules. Adding those to its load path led it to require
guile-gcrypt, which would fail if the host system did not have it
installed.
* hydra/modules/sysadmin/services.scm (cuirass-specs): For
"guix-modular-master", keep #:load-path-inputs empty.
* hydra/modules/sysadmin/services.scm (guix-input): Take a NAME argument.
(cuirass-specs): Use the correct input names. Rename '#:proc-arguments' to
'#:proc-args'. Add specifications for the "staging" and "core-updates"
branches. Add missing '#:load-path-inputs' and '#:package-path-inputs'
fields.
This was possible since Guix commit
66bc1d2aaf74fc7eb4ef9b3519c69bd37142ffb3.
* hydra/modules/sysadmin/services.scm (%cuirass-specs): Rename to...
(cuirass-specs): ... this. Make it a procedure. Change the
configuration to use "build-aux/cuirass/gnu-system.scm" and pass
'systems' in #:arguments.
(frontend-services): Add #:systems and adjust accordingly.
* hydra/berlin-new.scm <top level>: Pass #:systems to
'frontend-services'.
* hydra/modules/sysadmin/services.scm: New file.
* hydra/bayfront.scm: Use it.
(%gc-jobs, %certbot-job, %guix-daemon-config, start-firewall)
(firewall-service, %nginx-mime-types, %nginx-cache-activation)
(%cuirass-specs): Remove.
<top level>: Trim 'services' list and use 'frontend-services'.
* hydra/berlin.scm: Likewise.
* hydra/berlin-new.scm: Likewise.