guix-devel
[Top][All Lists]
Advanced

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

Re: Hackathon: Mumi and Cuirass


From: Christopher Baines
Subject: Re: Hackathon: Mumi and Cuirass
Date: Sat, 04 May 2019 08:19:29 +0100
User-agent: mu4e 1.2.0; emacs 26.2

Ricardo Wurmus <address@hidden> writes:

> Hey there,
>
> now that Guix 1.0 is out I think it’s a good time to improve our tools
> to allow us to better identify problems with package builds and to
> better respond to bug reports and patch submissions.

...

> 2) Cuirass
>
> Cuirass has a web interface: https://ci.guix.gnu.org/
>
> Unfortunately, it doesn’t yet enable us to answer questions like:
>
> - What packages are currently failing to build on aarch64?
> - What is the history of icecat builds on i686?
> - Can you show me all builds matching “rust” across all architectures?
> - What builds are blocked because of this one failing build?
>
> Implementing features that would allow us to better see the build status
> for all of our supported architectures would be very welcome.  It would
> be even better if we could also see an overview of our build nodes and
> what they are currently doing – how many build slots are still
> available?  Why is only one of the nodes doing any work?
>
> We have the freedom to integrate Cuirass more closely with the rest of
> Guix and the offloading framework, so this seems like a good target.
>
> If you find this kind of project interesting please get in touch!  You
> don’t need to know how to do any of these tasks as long as you are
> motivated to discuss this and help us find solutions together.
>
> Let’s do this!

I mentioned some things which seem related to this in this email [1],
but one of the enhancements I'm specifically interested in getting in to
Cuirass is a way to provide subscriptions to the build information. This
would enable "listening" to Cuirass, to get a near real time stream of
events, build information, things like that.

I previously tried scraping build information in to the Guix Data
Service, and you can see some data here [2], but that was slow, and I
was potentially missing builds. I think some kind of publish/subscribe
model would work out much better.

1: https://lists.gnu.org/archive/html/guix-devel/2019-04/msg00094.html
2: https://prototype-guix-data-service.cbaines.net/builds

> - What packages are currently failing to build on aarch64?
> - What is the history of icecat builds on i686?
> - Can you show me all builds matching “rust” across all architectures?
> - What builds are blocked because of this one failing build?

On the subject of questions like these, I would hope that if the Guix
Data Service had up to date build information, it wouldn't be too
difficult to add the necessary pages to make answering these questions
easy.

At the moment, as I say, there's no up to date information on builds,
and the only page I've added a form for comparing derivations between
two revisions ([3] for example).

3: 
https://prototype-guix-data-service.cbaines.net/compare/derivations?base_commit=094aaa1a1e81b6c5461c1a2aa8ccd9019faa97ec&target_commit=4ee55938de315ac965c12a99f5dc98f48ac2cc83

Now I'm not saying that I think it would be bad if Cuirass had a more
detailed web interface, but even if it did, I'd still be interested in
gathering up all the build information, as one thing I'm excited about
for the future is the possibility of having multiple independent build
farms.

In my mind, reproducible builds + multiple independant build farms is
the path towards trusted substitutes. From a users perspective, I'm
imaginging setting some policy where I trust substitutes if berlin, and
some other build farm agree on the output. But for a overall view of
what's going on, this is where I see the value of gathering up build
information from potentially many build farms in to one place.

Now that I've got some updated patches for Patchwork up [4], I'll
hopefully be able to make some time to work on this area over the coming
weeks.

4: https://issues.guix.info/issue/33185#38

Thanks,

Chris

Attachment: signature.asc
Description: PGP signature


reply via email to

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