Commit Graph

1989 Commits

Author SHA1 Message Date
Ludovic Courtès 3a633d01b4
hydra: berlin: Add earlyoom service.
* hydra/berlin.scm: Add ‘earlyoom-service-type’ instance.
2023-12-02 17:25:34 +01:00
Tobias Geerinckx-Rice c250626244
doc: Document Berlin's hard-reset procedure.
* doc/infra-handbook.org (Last resort: performing a hard reset of Berlin):
New section.
2023-11-26 01:00:00 +01:00
Christopher Baines b239604c2f
hydra: milano-guix-1: Fix typo.
* hydra/milano-guix-1.scm: Fix module import.
2023-11-20 16:24:05 +00:00
Christopher Baines 5ee3f825d6
hydra: milano-guix-1: Update config.
* hydra/milano-guix-1.scm (full-gc-job): New variable.
<services>: Use the full-gc-job and increase resources for childhurds.
2023-11-20 15:36:58 +00:00
Efraim Flashner 0e62b8664e
sysadmin: build-machines: Use tmpfs for /var/guix/temproots.
* hydra/modules/sysadmin/build-machines.scm (build-machine-os)
[file-systems]: Add tmpfs file-system for /var/guix/temproots.
2023-11-07 13:59:21 +02:00
Christopher Baines 50ec77a07e
hydra: bayfront: Make some guix-build-coordinator hook tweaks.
* hydra/bayfront.scm (%guix-build-coordinator-configuration): Support
more parallel build-success hooks and make the build-missing-inputs
hook do nothing, as this should be unused.
2023-11-02 08:33:32 +00:00
Christopher Baines be2b815e9e
hydra: bayfront: Have NGinx serve reproducible.json from QA.
This file is written and updated by the qa-frontpage, and is consumed
by https://ismypackagereproducibleyet.org/

* hydra/bayfront.scm (%qa.guix.gnu.org-nginx-servers): Serve
reproducible.json.
2023-11-02 08:32:03 +00:00
Christopher Baines 8227d5cf56
hydra: services: Allow reading from /var/lib/qa-frontpage.
Because this will allow NGinx to read and serve specific files from
this directory.

* hydra/modules/sysadmin/services.scm (qa-frontpage-activation): New
procedure.
(qa-frontpage-service-type): Extend the activation-service-type.
2023-11-02 08:29:37 +00:00
Christopher Baines 8618fac288
sysadmin: qa-frontpage: Update to 0-15.d7f2691.
* hydra/modules/sysadmin/packages.scm (qa-frontpage): Update to
0-15.d7f2691.
[inputs]: Use the latest guile-fibers, add guile-debbugs and use
guile-next.
2023-11-02 08:27:10 +00:00
Ludovic Courtès 90d20a2ebe
bayfront: Really copy the Cuirass manual.
This is a followup to e18ef9a10a.

* hydra/bayfront.scm (backup-mcron-jobs): Fix typo.
2023-10-29 23:26:59 +01:00
Ludovic Courtès e18ef9a10a
berlin, bayfront: Synchronize the Cuirass manual.
* hydra/berlin.scm (%rsync-modules-for-backup): Add “web-cuirass-manual”
module.
* hydra/bayfront.scm (backup-mcron-jobs): Add “/srv/cuirass-manual”.
2023-10-29 21:46:14 +01:00
Ludovic Courtès 5c45a32a69
berlin: rsync: Fix directory name for Cuirass releases.
* hydra/berlin.scm (%rsync-modules-for-backup): Fix file name for
“web-cuirass” module.
2023-10-29 21:03:04 +01:00
Ludovic Courtès c1cfb3b793
hydra: nginx: Add “Access-Control-Allow-Origin” header on /packages.json.
* hydra/modules/sysadmin/nginx.scm (guix.gnu.org-other-locations): Add
“add_header” directive for /packages.json.
2023-10-17 16:04:21 +02:00
Simon Tournier 092db20bcf
hydra: build-package-metadata: Add boolean for Git submodules in sources.json.
This format had been discussed in
<https://gitlab.softwareheritage.org/swh/devel/swh-loader-git/-/issues/4751#note_150607>

* hydra/build-package-metadata.scm (origin->json)[resolve]: Add the keyword
'submodule' when the Git reference is recursive.

Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2023-10-17 14:27:35 +02:00
Ludovic Courtès 053839dc94
hydra: services: Leave “guix-binary.tar.xz” GC roots.
These files are published as build products at
<https://ci.guix.gnu.org/search/latest/archive?query=spec%3Atarball+status%3Asuccess+system%3Ax86_64-linux+guix-binary.tar.xz>,
which automated tools download to make up-to-date Guix installations
without having to go through ‘guix pull’.

* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots): Remove
“guix-binary.tar.xz” from the list.
2023-10-16 19:36:40 +02:00
Ludovic Courtès e40d961b5a
hydra: services: Preserve Cuirass .drv GC roots.
By removing .drv GC root behind the back of Cuirass, we were
occasionally causing build failures with “missing .drv” errors.

Partly fixes <https://issues.guix.gnu.org/54447>.

* hydra/modules/sysadmin/services.scm (cleanup-cuirass-roots): Remove
code that would delete referrers of the targeted roots.
(guix-daemon-config)[extra-options]: Remove “--gc-keep-outputs”.
2023-10-16 19:36:39 +02:00
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
Andreas Enge e1c86496d7
hydra: harbourfront: Change DNS servers.
* hydra/harbourfront.scm (operating-system): Change name server entries.
2023-10-16 19:12:09 +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
Arun Isaac be56a944f4
hydra: berlin: Upgrade mumi to 0.0.5-6.025fc60.
* hydra/berlin.scm (mumi-latest): Upgrade to 0.0.5-6.025fc60.
2023-10-13 00:49:59 +01: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
Arun Isaac 8f703892a6
hydra: berlin: Upgrade mumi to 0.0.5-5.8f8a708.
* hydra/berlin.scm (mumi-latest): Upgrade to 0.0.5-5.8f8a708.
2023-10-10 23:38:35 +01:00
Ludovic Courtès e712907558
hydra: nginx: Add ‘Cache-Control’ header on /{packages,sources}.json.
This allows for client-side caching.

* hydra/modules/sysadmin/nginx.scm (guix.gnu.org-other-locations): Add
“expires” directives for /{packages,sources}.json.
2023-10-10 10:49:16 +02:00
Ludovic Courtès aa77e3806b
hydra: nginx: Send /packages.json and /sources.json gzipped.
This sends them as “Content-Encoding: gzip”, as a followup to
1123fd81ce.

* hydra/modules/sysadmin/nginx.scm (guix.gnu.org-other-locations):
Remove “gunzip on” from /{packages,sources}.json.
2023-10-09 21:16:23 +02:00
Ludovic Courtès 58bd4453c8
hydra: build-package-metadata: Produce ‘variable_name’ field when possible.
* hydra/build-package-metadata.scm (package-variable-name): New procedure.
(package->json): Use it to produce ‘variable_name’ field.
2023-10-09 14:27:06 +02:00
Ludovic Courtès 1123fd81ce
hydra: build-package-metadata: Compress JSON files.
* hydra/build-package-metadata.scm (write-json): Use
‘call-with-gzip-output-port’.
(main): Append “.gz” to JSON file names.
* hydra/modules/sysadmin/nginx.scm (guix.gnu.org-other-locations): Add
“gzip_static” and “gunzip” directives on /packages.json and
/sources.json.
2023-10-09 10:57:31 +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
Ludovic Courtès 724573a799
hydra: Update SSH and archive key for kreuzberg (AArch64).
These keys were apparently regenerated, overwriting the previous ones,
probably when it was last upgraded (with ‘guix deploy’) on May 9th, 2023.

* hydra/keys/guix/berlin/kreuzberg.rekado.pub: Update.
* hydra/deploy-honeycomb.scm <kreuzberg>: Change ‘host-key’.
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 136f02ef7e
hydra: build-machines: Childhurd QEMU listens on 127.0.0.1.
There’s no need to accept connections coming from other machines.

* hydra/modules/sysadmin/build-machines.scm (berlin-new-build-machine-os)
[childhurd-net-options]: Listen on 127.0.0.1, not 0.0.0.0.
2023-10-02 17:24:22 +02:00
Ludovic Courtès afd9aa81bc
hydra: build-machines: Change childhurd guest SSH port to 22.
This is a followup to Guix commit 81d46ef989fc2290d60a5c5f5451e81e7e546eda.

* hydra/modules/sysadmin/build-machines.scm (berlin-new-build-machine-os):
[childhurd-net-options]: Change post to 22.
2023-10-02 17:22:41 +02:00
Ludovic Courtès 238e350b63
hydra: build-machines: Remove ‘hydra’ account from childhurd.
* hydra/modules/sysadmin/build-machines.scm (berlin-new-build-machine-os)[childhurd-os]:
Remove ‘hydra’ user account.
2023-10-02 17:20:56 +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
Christopher Baines 0062a554f2
hydra: beid: Update config.
Various overdue config updates.

* hydra/beid.scm (my-nginx-service): Use 127.0.0.1 rather than
localhost for the data service.
(guix-data-service-nars-cleanup): New procedure.
(mcron-service-configuration): Add nars cleanup job.
<bootloader>: Change target to targets.
<file-systems>: Remove now unused file system.
<services>: Add extra special file for nars cleanup, update openssh
config, provide more PostgreSQL connections and reduce the max
processes for the data service processing jobs.
2023-09-19 18:08:40 +01:00
Ricardo Wurmus 8eea4b8311
talks: Add talk for DFN IT sysadmins.
* talks/2023-dfn: New directory.
2023-09-19 14:30:08 +02:00
Christopher Baines a5d4413ed7
hydra: bayfront: Increase bordeaux nar cache max size.
As bayfront has more space now.

* hydra/bayfront.scm (%bayfront-nginx-service-extra-config): Increase
bordeaux nar cache max_size.
2023-09-15 15:36:04 +01:00
Christopher Baines f07f498a06
hydra: bayfront: Add bffe service.
This replaces me running the bffe in a screen session.

The bffe looks after submitting master branch builds to the bordeaux
build coordinator, as well as exposing information about the build
farm.

* hydra/bayfront.scm (%guix-build-coordinator-configuration): New
variable.
<services>: Add bffe-service-type.
* hydra/nginx/html/bordeaux/home.html: New file.
* hydra/nginx/html/bordeaux/index.html: Remove.
2023-09-15 15:34:15 +01:00
Christopher Baines a4c5263457
hydra: bayfront: Collect more garbage.
The bayfront store doesn't need to be very big, so collect more
garbage. Currently it's now just over 100GiB, so it would be good to
not see it grow much more than this.

* hydra/bayfront.scm (services): Collect more garbage.
2023-09-13 12:22:24 +01:00
Christopher Baines 55287db2de
sysadmin: qa-frontpage: Update to 0-14.c6e4a68.
* hydra/modules/sysadmin/packages.scm (qa-frontpage): Update to
0-14.c6e4a68.
[arguments]: Update style.
[native-inputs]: Add emacs-minimal and emacs-htmlize.
2023-09-04 21:23:50 +01:00
Arun Isaac d30d215fc1
hydra: berlin: Upgrade mumi to 0.0.5-4.2453a5a.
* hydra/berlin.scm (mumi-latest): Upgrade to 0.0.5-4.2453a5a.
2023-09-04 09:33:38 +01: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
Ludovic Courtès 8f2ce9f8b6
nginx: berlin: Cache Cuirass build products.
This should help further mitigate <https://issues.guix.gnu.org/64317>.

* hydra/nginx/berlin.scm (berlin-locations): Add location block for
"/download".
2023-09-03 17:44:42 +02:00
Ludovic Courtès d30f295ea6
nginx: berlin: Do not override 'Cache-Control' on Cuirass /static.
* hydra/nginx/berlin.scm (berlin-locations): Remove "expires" directive
for /static.  Change 'proxy_cache_valid' default duration.
2023-09-03 17:44:42 +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
Christopher Baines c7194f7d23
hydra: bayfront: Have GC clear more disk space.
There's no need to have a large store on bayfront, so change the gc
configuration to reduce it in size. Also reduce the frequency so that
the gc blocks other operations less often.

* hydra/bayfront.scm <services>: Change gc configuration.
2023-08-10 14:26:06 +01:00
Giovanni Biscuolo bc152f18a7
hydra: Update SSH key for atrent.
* hydra/keys/ssh/atrent.pub: Replace with new RSA key.
2023-08-04 09:24:56 +02:00
Giovanni Biscuolo a5f2771bd4
hydra: milano-guix-1: Replace disks.
Replace broken disks (and reinstall).

* hydra/milano-guix-1.scm:
  - (bootloader): Add sdd to targets;
  - (file-systems): Replace uuid of root mount point;
  - (swap-devices): Replace devices names with uuid.
2023-08-04 08:33:06 +02:00
Christopher Baines 39f503fc44
hydra: bayfront: Keep connections to hydra-guix-129 alive.
To try and reduce the chance of the MDC blocking requests from
bayfront.

* hydra/bayfront.scm (%bordeaux.guix.gnu.org-nginx-servers): Enable
keeping connections to hydra-guix-129 alive.
<services>: Keep up to 2 connections from each NGinx worker process to
hydra-guix-129 alive.
2023-07-27 16:31:37 +01:00