Commit graph

16 commits

Author SHA1 Message Date
37b7c568ed Make the job timeout configurable 2025-02-10 11:05:07 +00:00
931b7bc593 Add a slightly crude method to ignore systems and targets
While processing a revision. It would be good to also record what systems and
targets are in the platforms so it's clear what data is missing, but that can
be added later.
2025-02-03 22:59:34 +00:00
f6eadb0b16 Make the free space requirement configurable 2024-08-20 09:49:41 +01:00
31bd2156f7 Support setting environment variables in the inferior
When processing jobs, this is mostly to allow setting GUIX_DOWNLOAD_METHODS.
2024-06-24 23:02:14 +01:00
ca69d3329d Add exception handling to the process-jobs script
As I'm seeing this exit on beid, but I'm not sure why.
2024-03-05 10:57:41 +00:00
c1d2f3a1b7 Add meaningful parallelism to processing jobs
Make parallel use of inferiors when computing channel instance derivations,
and when extracting information about a revision. This should allow for some
horizontal scalability, reducing the impact of additional systems for which
derivations need computing.

This commit also fixes an apparent issue with package replacements, as
previously the wrong id was used, and this hid some issues around
deduplication.
2024-01-18 15:34:40 +00:00
29d49ba31a Detach the database setup from the main guix-data-service process
This will allow restarting them independently, leaving it up to the operator
to ensure that all processes are compatible.
2023-06-09 16:11:06 +01:00
3ba8418656 Allow skipping processing system tests
Generating system test derivations are difficult, since you generally need to
do potentially expensive builds for the system you're generating the system
tests for. You might not want to disable grafts for instance because you might
be trying to test whatever the test is testing in the context of grafts being
enabled.

I'm looking at skipping the system tests on data.guix.gnu.org, because they're
not used and quite expensive to compute.
2023-02-08 14:56:48 +00:00
65f2f21d3a Support customising the latest branch revision max processes
This makes it possible to set a higher or lower value depending on what you
want.
2020-02-28 20:58:21 +00:00
c516154816 Fix the default max-processes for the process-jobs script 2019-12-22 23:26:45 +00:00
c229ace8a5 Allow customising the maximum number of processes 2019-12-16 19:57:56 +00:00
743cec7cb6 Associate a name with database connections
This helps when working out which connection to the database is doing what.
2019-07-12 19:49:26 +01:00
3df0b43146 Use line buffering for the input and output ports
As these are used for logging, which is done on a line by line basis. Remove
the now redundant calls to (force-output).
2019-06-17 18:09:10 +01:00
7a34570ef8 Add missing (guix-data-service database) import 2019-04-17 08:28:36 +01:00
2e45bb0696 Extract out some database functionality to another module 2019-04-14 10:04:51 +01:00
5a9262b38d
Initial commit
This is a service designed to provide information about Guix. At the
moment, this initial prototype gathers up information about packages,
the associated metadata and derivations.

The initial primary use case is to compare two different revisions of
Guix, detecting which packages are new, no longer present, updated or
otherwise different.

It's based on the Mumi project.

[1]: https://git.elephly.net/software/mumi.git
2019-02-07 22:26:57 +00:00