[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: The Guix Build Coordinator in 2021

From: Christopher Baines
Subject: Re: The Guix Build Coordinator in 2021
Date: Wed, 10 Feb 2021 20:07:15 +0000
User-agent: mu4e 1.4.14; emacs 27.1

Mathieu Othacehe <> writes:

> We are now in a situation where our continuous integration system,
> while performing better and better is getting out of hand. Here are the
> different software I'm keeping track of:
> * Cuirass, deployed on
> * The Guix Build Coordinator, deployed on
> * The Guix Data Service, deployed on
> * Patchwork, deployed on
> All those services have databases, using different DBMS on different
> servers. Those databases are sometimes overlapping, in the same way as
> some of the features of those software.
> In particular I feel that what's implemented in the Guix Build
> Coordinator can be seen as a subset of Cuirass functionalities. As you
> know, I'm reluctant to the idea of connecting Cuirass to the Guix Build
> Coordinator, because most of Cuirass PostgreSQL database content would
> be duplicated in the SQLite database of the GBC.
> On the other hand, maintaining those two software in separate ways seems
> like a huge waste of time given the very limited number of people
> contributing the maintenance of the CI system.
> Furthermore, some of the features we are implementing here, should be
> part of the "guix-daemon" itself, which makes me think that we should
> not place too much effort in their development.
> My proposition would be to make a listing of both Cuirass and the GBC
> features, and see how we could merge them. By maintaining a single
> software, with a single database, running on the same server, we could
> spare some efforts, and quickly converge towards a better CI.
> The new Cuirass architecture and the switch to PostgreSQL, make the
> software way more modular, and should allow us to add new
> functionalities without too much trouble.
> What do you think of that proposition?

I think there's definitely opportunity here, but I'd suggest first
looking at the situation in abstract, ignoring the existing software,
and just focus on what a good situation would be regarding "CI".

With consensus about direction, it should be much easier to make
decisions about the software involved.

Using the "CI" term to describe a system isn't particularly clear to me,
especially in the context of Guix, so I'm going to use different
terms. In my mind at least, I'm currently thinking about two things,
testing patches and non-master branches, and building substitutes for
the master branch and making these available. The direction I've been
looking in also is to treat those two things as quite separate concerns
(which doesn't exclude using the same software for them).

What in your mind would a good "CI system" for Guix do? I'm asking this
in the sense of responsibilties.


Attachment: signature.asc
Description: PGP signature

reply via email to

[Prev in Thread] Current Thread [Next in Thread]