Commit Graph

137 Commits

Author SHA1 Message Date
Ludovic Courtès b8fc66c043
hydra: cuirass: Fix build product regexps.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Turn the ‘job’
field of ‘build-output’ into actual regexps.
2023-10-16 19:36:39 +02:00
Ludovic Courtès 213384e43d
hydra: services: Increase cache bypass threshold.
Partly fixes <https://issues.guix.gnu.org/54447>.

* hydra/modules/sysadmin/services.scm (frontend-services): Increase
default value of #:cache-bypass-threshold.
2023-10-15 22:29:42 +02:00
Ludovic Courtès 9a3aa691f7
hydra: cuirass: Set build log expiry to 9 months.
* hydra/modules/sysadmin/services.scm (cuirass-service): Add
‘log-expiry’ field to <cuirass-remote-server-configuration>.
2023-10-12 22:28:29 +02:00
Ludovic Courtès 5b2c48e713
hydra: cuirass: Increase polling period.
* hydra/modules/sysadmin/services.scm (cuirass-service): Bump ‘interval’
to 10mn.
(cuirass-specs): Change ‘period’ of external projects to 20mn.
2023-10-08 22:52:19 +02:00
Mathieu Othacehe 8fa8d6affb
hydra: services: Disable Cuirass notification to guix-ci@gnu.org.
This is not used and probably not the right approach.

* hydra/modules/sysadmin/services.scm (cuirass-notifications): Remove it.
(cuirass-specs): Remove notifications.
2023-10-06 11:16:46 +02:00
Ludovic Courtès ae20c49e0b
hydra: Move i586-gnu builds to build machines.
This is made possible thanks to zero-configuration childhurd offloading,
added in Guix commit 953c65ffdd43c02c934518fb7a1c68542584b223.

* hydra/modules/sysadmin/services.scm (frontend-services): Remove
‘cuirass-remote-worker-service-type’.
* hydra/berlin-nodes.scm: Add i586-gnu to the systems supported by
‘childhurd-ip?’ machines.
2023-10-02 14:38:10 +02:00
Ludovic Courtès cf9a927361
hydra: cuirass: Tweak jobset priority and polling period.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Increment
‘priority’ for jobsets related to images, tests, and time traveling.
Set ‘period’ field on all non-Guix jobsets to reduce their polling
rate.
2023-10-02 14:38:09 +02:00
Ludovic Courtès 87ea1b1ba4
hydra: services: Add Cuirass remote worker for GNU/Hurd builds.
* hydra/modules/sysadmin/services.scm (frontend-services): Add
‘cuirass-remote-worker-service-type’ instance.
2023-09-03 17:55:19 +02:00
Arun Isaac e1cd2ef2ff
hydra: services: Add cuirass spec for skribilo.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add skribilo
spec.
2023-08-25 16:48:38 +01:00
Arun Isaac 7369af08b1
hydra: services: Add cuirass spec for mumi.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add mumi spec.
2023-08-25 16:45:16 +01:00
Ludovic Courtès 0846346462
hydra: cuirass: Add introduction for 'cuirass' channel.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add introduction
for 'cuirass' channel.
2023-06-24 23:03:02 +02:00
Ludovic Courtès 22d75d93ae
hydra: cuirass: Fix typo in 'shepherd' jobset.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Fix branch name
for 'shepherd' channel.
2023-06-24 23:03:02 +02:00
Ludovic Courtès 9ce5631992
hydra: cuirass: Add 'cuirass' jobset.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'cuirass'.
2023-06-07 15:11:06 +02:00
Ludovic Courtès 9fa5e10ec5
hydra: cuirass: Update spec of Guile and the Shepherd.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Update manifest
file.
2023-06-07 15:11:06 +02:00
Lars-Dominik Braun 4be0947783
hydra: Add Guix CRAN repository updater.
* hydra/modules/sysadmin/packages.scm (guix-cran-scripts): New variable.
* hydra/modules/sysadmin/services.scm (guix-cran-job, %guix-cran-accounts,
guix-cran-service-type): New variables.
* hydra/berlin.scm <services>: Add guix-cran-service-type.
2023-06-01 22:47:58 +02:00
Ludovic Courtès 843b517153
hydra: berlin: Use local substitutes.
* hydra/modules/sysadmin/services.scm (guix-daemon-config)
(frontend-services): Add #:substitute-urls and honor it.
* hydra/berlin.scm: Pass #:substitute-urls to 'frontend-services'.
2023-05-30 18:16:47 +02:00
Ludovic Courtès fbbb7ac1e7
hydra: services: Add Cuirass spec for the Shepherd.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'shepherd' spec.
2023-05-09 14:39:02 +02:00
Andreas Enge 1677fa1bdf
hydra: cuirass: Update jobset specifications.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Merge
guix-other-archs into guix. Remove staging, core-updates and
kernel-updates-system-tests.
2023-04-25 16:41:13 +02:00
Leo Famulari f061b725f6
hydra: cuirass: Remove jobset for testing Go language updates.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Remove 'go-team'.
2023-03-28 16:38:36 -04:00
Leo Famulari f7995b9816
hydra: cuirass: Remove broken kernel-updates-images jobset.
This jobset doesn't help test the new kernel versions because the
Cuirass system on berlin.gnu.org doesn't reliably build images, failing
with "missing derivation" errors like this:

------
cannot build missing derivation ?/gnu/store/hs6kp1lqgymhyp3jndc0dsp0pn4psgv0-gui-installed-desktop-os-encrypted.drv?
------

This is bug #54447:

https://issues.guix.gnu.org/54447

* hydra/modules/sysadmin/services.scm (cuirass-specs): Remove
'kernel-updates-images'.
2023-03-18 17:57:24 -04:00
Leo Famulari bec8c7e2c2
hydra: cuirass: Add jobset for testing Go language updates.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'go-team'.
2023-03-07 17:34:02 -05:00
Ludovic Courtès 39f57a0f14
hydra: services: Add Cuirass spec for Guile.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'guile'
jobset.
2023-03-05 22:36:26 +01:00
Mathieu Othacehe 8292823c1e
hydra: services: Add Rust team to Cuirass.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add it.
2023-03-02 16:40:04 +01:00
Maxim Cournoyer c6bb774462
hydra/services: Allow configuring full guix gc jobs.
* hydra/modules/sysadmin/services.scm (gc-jobs): Document that
threshold can be #f, and remove the -F and threshold value for the
guix gc jobs in this case.  Also run once instead of twice a day when
a full gc is used.
2023-01-18 16:30:11 -05:00
Christopher Baines d36fd168a9
hydra: services: Add service for the Guix Packages website.
This has been running on bayfront in a screen session, but this commit
adds configuration so it's run by the shepherd.

* hydra/modules/sysadmin/services.scm (guix-packages-website-configuration,
guix-packages-website-configuration?,
guix-packages-website-configuration-origin,
guix-packages-website-configuration-port,
guix-packages-website-configuration-host): New procedures.
(guix-packages-website-service-type): New variable.
* hydra/bayfront.scm <services>: Add service for the Guix packages website.
2023-01-15 16:23:18 +00:00
Christopher Baines 8c17ac5644
hydra: services: Add service for the QA Frontpage.
This has been running on bayfront, but so far without a shepherd
service.  These changes address that.

I did attempt using the least-authority-wrapper, but ran in to
problems getting SSH working.

* hydra/modules/sysadmin/packages.scm: New file.
* hydra/modules/sysadmin/services.scm (qa-frontpage-configuration,
qa-frontpage-configuration?, qa-frontpage-configuration-package,
qa-frontpage-configuration-port, qa-frontpage-configuration-host,
qa-frontpage-configuration-database,
qa-frontpage-configuration-submit-builds?,
qa-frontpage-configuration-manage-patch-branches?): New procedures.
(qa-frontpage-service-type): New variable.
* hydra/bayfront.scm <services>: Add the QA Frontpage.
2023-01-14 23:06:16 +00:00
Christopher Baines 8f151c6a81
hydra: services: Fix goggles missing guile-lib.
* hydra/modules/sysadmin/services.scm (goggles): Add guile-lib to
googles with-extensions.
2023-01-14 22:59:17 +00:00
Mathieu Othacehe fa9b904b7b
sysadmin: services: Fix typo.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Fix a typo in the
manifest name.
2023-01-07 15:39:59 +01:00
Mathieu Othacehe d5a70911a3
sysadmin: services: Fix kernel-update specifications.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Use the
"kernel-updates" branch for the kernel-update specifications.
2023-01-05 18:43:08 +01:00
Mathieu Othacehe 0fad0d2cc4
sysadmin: services: Build kernel-update specifications.
* hydra/modules/sysadmin/services.scm (frontend-services): Add
"kernel-updates" to the default branches.
2023-01-05 18:28:15 +01:00
Leo Famulari 7767aa4039
hydra: cuirass: Add jobsets for testing kernel updates.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'kernel-updates',
'kernel-updates-images', and 'kernel-updates-system-tests' jobsets.
2022-12-29 13:52:43 -05:00
Ludovic Courtès 136af3a877
hydra: services: Map glibc-utf8-locales in the goggles-bot container.
* hydra/modules/sysadmin/services.scm (goggles-bot-shepherd-services)
[program/wrapped]: Add mapping for "/run/current-system/locale".
Adjust GUIX_LOCPATH.
2022-11-18 11:55:42 +01:00
Ludovic Courtès 81920f5117
hydra: services: Ensure 'goggles-bot' really runs in a UTF-8 locale.
* hydra/modules/sysadmin/services.scm (goggles-bot-shepherd-services):
Pass #:preserved-environment-variables to 'least-authority-wrapper'.
2022-11-18 11:31:57 +01:00
Ricardo Wurmus 9c49b7c10f
goggles: Do not make %goggles-irc-log-directory world-writable.
* hydra/modules/sysadmin/services.scm (%goggles-activation): Do not
create the IRC log directory, and don't make it world-writable; the
directory is created by goggles-bot-activation.
2022-11-09 12:37:24 +01:00
Ludovic Courtès 8c365f6904
hydra: services: Add 'goggles-bot' service.
* hydra/modules/sysadmin/services.scm (<goggles-bot-configuration>): New
record type.
(goggles-bot-program): New variable.
(goggles-bot-shepherd-services, goggles-bot-activation): New procedures.
(%goggles-bot-accounts, %goggles-bot-log-rotations)
(goggles-bot-service-type): New variables.
* hydra/bayfront.scm (services): Use it.
2022-11-06 18:05:11 +01:00
Mathieu Othacehe d6a44aecb1
berlin: Split Cuirass guix specification in two.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Restrict guix
specification to x86_64-linux and i686-linux. Add a new guix-other-archs for
aarch64-linux and powerpc64le-linux.
2022-10-22 11:18:11 +02:00
Mathieu Othacehe af0d279f40
hydra: Add offloading service to Berlin.
Add a service registering the /etc/guix/machines.scm file to enable the
offload mechanism.

* hydra/modules/sysadmin/services.scm (%offload-service): New variable.
(frontend-services): Use it.
2022-09-07 08:05:58 +02:00
Ludovic Courtès d436b8fa9a
hydra: services: Really run "certbot renew" twice per week.
* hydra/modules/sysadmin/services.scm (%certbot-job): Use Vixie cron
syntax and really run twice per week.
2022-07-11 17:52:28 +02:00
Ludovic Courtès 30c1930dd7
hydra: cuirass: Add "time-travel" jobset.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add 'time-travel' jobset.
2022-07-11 17:52:28 +02:00
Maxim Cournoyer f49b15274e
berlin: Disable gzip compression for substitutes.
* hydra/modules/sysadmin/services.scm (frontend-services): Remove gzip
from the list of supported compression types.
2022-03-03 13:19:07 -05:00
Mathieu Othacehe cffcedb57e
Add a crash-dump service. 2022-02-02 17:06:12 +01:00
Mathieu Othacehe 710135e1b0
hydra: services: Increase the publish bypass threshold.
* hydra/modules/sysadmin/services.scm (frontend-services): Increase it to 100MiB.
2021-12-21 16:52:27 +01:00
Ludovic Courtès 275a2ac393
hydra: Factorize berlin's 'wireguard-peer' record.
* hydra/dover.scm (berlin-peer): Remove.  Use BERLIN-WIREGUARD-PEER
instead.
* hydra/modules/sysadmin/honeycomb.scm (berlin-peer): Likewise.
* hydra/modules/sysadmin/overdrive.scm (berlin-peer): Likewise.
* hydra/bayfront.scm: Use BERLIN-WIREGUARD-PEER instead of the inline
definition.
* hydra/modules/sysadmin/services.scm (berlin-wireguard-peer): New
variable.
2021-12-21 16:37:35 +01:00
Ricardo Wurmus af72899a3a
sysadmin: Disable SSH password authentication.
* hydra/modules/sysadmin/services.scm (frontend-services): Disable
password authentication for openssh-service-type.
2021-12-19 14:29:06 +01:00
Ludovic Courtès 27dc74fbe3
hydra: berlin: Periodically populate Disarchive database from Cuirass.
* hydra/modules/sysadmin/services.scm (<disarchive-configuration>): New
record type.
(disarchive-activation, disarchive-mcron-jobs): New procedures.
(disarchive-service-type): New variable.
* hydra/berlin.scm <services>: Use it.
2021-10-14 11:36:55 +02:00
Ludovic Courtès 0eaa8b93f5
hydra: cuirass: Add build products for the 'disarchive' jobset.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add
'build-outputs' for "disarchive" job.  Increase period.
2021-10-12 15:53:53 +02:00
Ludovic Courtès 7a43f18f49
hydra: cuirass: Add the "source" and "disarchive" jobsets.
* hydra/modules/sysadmin/services.scm (cuirass-specs): Add the "source"
and "disarhive" jobsets.
2021-10-08 15:21:18 +02:00
Mathieu Othacehe 741a55f966
hydra: services: Reverse the Cuirass no-publish logic.
* hydra/modules/sysadmin/services.scm (cuirass-configuration): Use "publish?"
instead of "no-publish?".
2021-08-13 13:47:15 +02:00
Mathieu Othacehe a981d79011
hydra: services: Do not start a remote-server publish server.
As this server does not use a cache it is prone to connection timeout errors,
as discussed here:
https://lists.gnu.org/archive/html/guix-devel/2021-08/msg00021.html.

Use the main publish server behind https://ci.guix.gnu.org instead.

* hydra/modules/sysadmin/services.scm (cuirass-service): Do not start a
publish server.
2021-08-12 13:10:25 +02:00
Mathieu Othacehe ca6f40272f
hydra: services: Increase the publish nar ttl.
This has been discussed here: <https://issues.guix.gnu.org/48926>.

* hydra/modules/sysadmin/services.scm (frontend-services): Increase the
default publish nar ttl to 180 days.
2021-08-12 11:56:20 +02:00