guix-devel
[Top][All Lists]
Advanced

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

Re: GSoC: Adding a web interface similar to the Hydra web interface


From: Tatiana Sholokhova
Subject: Re: GSoC: Adding a web interface similar to the Hydra web interface
Date: Tue, 5 Jun 2018 01:14:26 +0300

Hello, Ricardo!

Yes, I've taken a look at Hydra. I think my problem is that I don't totally understand what means some pages at Hydra and how it is related to Cuirass database tables. Hydra has Projects, Jobsets for each project, Evaluations and Jobs for each Jobset. And Cuirass has Specifications, Evaluations and Derivations. Could you please clarify how these entities are related to each other? I formulate more precise questions below.

I have come up with the following list of features:

1. Add the list of all evaluations of a specification displaying numbers of successful and failed builds for each evaluation (like this list https://hydra.nixos.org/jobset/gnu/guile-2-0/evals).
2. Add the table with status information of each job-evaluation pair like https://hydra.nixos.org/jobset/gnu/guile-2-0/#tabs-jobs.  Am I right that in terms of Cuirass database derivations correspond to jobs? So, we need to display "derivations" table with derivations as rows and evaluations as columns and fill the cells using information from the "builds" table? Also, it is not clear to me how to order evaluations by their creation time like it's done in Hydra.
3. Add page displaying information about a build similar to https://hydra.nixos.org/build/74870692. Am I right that here we should display the information stored in hydra-like build description (defined in http.scm) alongside with links to the build log and outputs? 
4. Add additional information about previous builds (latest successful, first broken, etc) on this build page. For this feature, we need to extend database requests functionality. 
5. Add job information page containing the list of job's latest builds like https://hydra.nixos.org/job/gnu/guile-2-0/build.x86_64-linux.

What do you think about these features? I afraid that I am not familiar with typical Hydra use cases, so I may miss some important features.

Best regards,
Tatiana


2018-06-03 22:40 GMT+03:00 Ricardo Wurmus <address@hidden>:
Hi Tatiana,

> I fixed my previous commits as you adviced. I have tested some features on
> examples databases and it was correct. But I can't try your database
> (small-cuirass.db) file, the queries just return empty 'queue' and 'latest
> build' lists, and I haven't tried other requests yet.

Oh, maybe there’s something wrong with that file.  I’m sorry.

> Now we have a web application with two pages: main page with current
> specifications status and pages for each specification. I think, for the
> next stage I should display some more information from the database but I'm
> not sure what else I should display.

Have you taken a look at https://hydra.nixos.org yet?  This is the hydra
instance of the Nix project.  (We use an older variant of the same
software on https://hydra.gnu.org, but it’s not very responsive.)

On https://hydra.nixos.org/jobset/nixos/staging you can see a particular
branch of the nixos project.  It lists evaluations, displays the number
of successes, failures, and pending builds, and it links to a detailed
overview of the evaluation.

For example, at https://hydra.nixos.org/eval/1459429 we see the list of
builds that are associated with a particular evaluation and we can
follow a link to a description of that build.  The build page shows us
some information about the derivation/package and links to the build
logs.

It also shows us when the build first failed, what change in the
repository lead to the build failure, and so on.

> Now I'm not sure what features I should implement next? What else do you
> want to see by the first deadline?

We are not just looking for a status page that displays the database
contents.  Some of the bits of information have to be derived from more
than one database record.  When you compare the current state of the
Cuirass web interface to that of Hydra, what do you see is still missing
and should be implemented next?  Could you identify the top 5 features
that you think are missing and could be added to Cuirass?

--
Ricardo



reply via email to

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