From mboxrd@z Thu Jan 1 00:00:00 1970 From: =?utf-8?Q?Cl=C3=A9ment?= Lassieur Subject: Re: GSoC: Adding a web interface similar to the Hydra web interface Date: Wed, 18 Jul 2018 11:34:40 +0200 Message-ID: <877els7uq7.fsf@lassieur.org> References: <87vac3twbe.fsf@gnu.org> <87o9hog2ye.fsf@elephly.net> <87d0xyn9zs.fsf@elephly.net> <87d0xswvls.fsf@elephly.net> <87r2m4ntk4.fsf@mdc-berlin.de> <87tvqxy4i9.fsf@elephly.net> <87h8mqxx7b.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:49569) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ffirC-000234-SW for guix-devel@gnu.org; Wed, 18 Jul 2018 05:34:51 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ffirB-0007kA-OF for guix-devel@gnu.org; Wed, 18 Jul 2018 05:34:50 -0400 In-reply-to: <87h8mqxx7b.fsf@gnu.org> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Ludovic =?utf-8?Q?Court=C3=A8s?= Cc: guix-devel , Tatiana Sholokhova Dear all, Ludovic Court=C3=A8s writes: > Hello Tatiana & all, > > Ricardo Wurmus skribis: > >>> I am a bit confused about the database structure. As far as I understan= d, >>> there are project_name (project) and branch_name (jobset) properties, b= ut >>> project_name is a primary key, so a project can't have several branches? >> >> I share your confusion. Maybe Ludovic or Mathieu can shed some more >> light on this. > > It=E2=80=99s confusing indeed, I think it=E2=80=99s a mistake that has ye= t to be fixed. > Basically what we do now is that we use a different =E2=80=98repo_name=E2= =80=99 when we > just want to add a branch=E2=80=A6 The notion of "project" has been removed[1]. It was previously the specification name, which is a primary key indeed, so it didn't make sense because one project couldn't have several branches. Now, Hydra's jobsets are the exact same thing as Cuirass' specifications. So if you want to build the "master" and "core-update" branches of Guix, you need two specifications. However it wasn't even possible, before, to build several branches, because specifications names were used by the evaluator: they had to be "guix" or "guix-modular". Since the name was a primary key, we could only have two specifications. It is now[2] possible, because the evaluator uses the input name instead of the specification name. If you think there is a need for the notion of "Project" in Cuirass, we could add it, but it needs to be a new SQL table. And each specification would be associated with one project. Cl=C3=A9ment [1]: https://git.savannah.gnu.org/cgit/guix/guix-cuirass.git/commit/?id=3Db= e713f8a30788861806a74865b07403aa6774117 [2]: https://git.savannah.gnu.org/cgit/guix/guix-cuirass.git/commit/?id=3D7= b2f9e0de1ad2d320973b7aea132a8afcad8bece