From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:43364) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1fUwq1-0001P3-8o for guix-patches@gnu.org; Mon, 18 Jun 2018 12:17:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1fUwq0-0004SN-5F for guix-patches@gnu.org; Mon, 18 Jun 2018 12:17:05 -0400 Received: from debbugs.gnu.org ([208.118.235.43]:47324) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1fUwq0-0004SJ-2B for guix-patches@gnu.org; Mon, 18 Jun 2018 12:17:04 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1fUwpz-0007U2-Qj for guix-patches@gnu.org; Mon, 18 Jun 2018 12:17:03 -0400 Subject: bug#31813: [PATCH] evaluate: Use a generic key to identify Cuirass arguments. Resent-To: guix-patches@gnu.org Resent-Message-ID: References: <20180613135001.28724-1-clement@lassieur.org> <87po0txfq6.fsf@gnu.org> <87efh9ug1f.fsf@lassieur.org> <87tvq4v1x7.fsf@gnu.org> <87bmcctbg5.fsf@lassieur.org> <87fu1nqfv6.fsf@gnu.org> From: =?UTF-8?Q?Cl=C3=A9ment?= Lassieur In-reply-to: <87fu1nqfv6.fsf@gnu.org> Date: Mon, 18 Jun 2018 18:16:54 +0200 Message-ID: <87po0ocbnt.fsf@lassieur.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: Ludovic =?UTF-8?Q?Court=C3=A8s?= Cc: 31813-done@debbugs.gnu.org Hi Ludovic, Ludovic Court=C3=A8s writes: > For the record, this calling convention comes from Hydra. In Hydra, a > =E2=80=9Cjobset=E2=80=9D can have several =E2=80=9Cinputs=E2=80=9D, and t= hey all show up in this =E2=80=98args=E2=80=99 > list, like: > > ((INPUT1 . PROPERTIES) (INPUT2 . PROPERTIES) =E2=80=A6) > > where INPUT1 is the famous name shown above. (See > .) > >> And anyway if we force the argument key to 'guix', 'guix-checkout' or >> 'guix-modular', it wouldn't prevent us to add other inputs (checkouts) >> later, I think. > > It would prevent us from distinguishing between different inputs. > Currently, at least with Hydra, we can do: > > (assoc-ref args 'some-input) > > and get the file-name, revision, etc. properties corresponding to > =E2=80=98some-input=E2=80=99. > > So I think we should preserve this API. > > The problem we have though is that Cuirass has no notion of =E2=80=9Cinpu= t=E2=80=9D. In > Hydra=E2=80=99s schema, there=E2=80=99s =E2=80=98JobsetInputs=E2=80=99 (t= hat=E2=80=99s where we get the input > name from in the =E2=80=98args=E2=80=99 alist above), which is separate f= rom =E2=80=98Jobset=E2=80=99 > (roughly equivalent to =E2=80=98Specifications=E2=80=99 in Cuirass.) > > https://github.com/NixOS/hydra/blob/master/src/sql/hydra.sql > > Perhaps what we should do is introduce an =E2=80=98Input=E2=80=99 table t= o begin with, > and have =E2=80=98Specifications=E2=80=99 refer to one or more of these. > > How does that sound? Excellent! That would be the fix for another issue we have: our specifications also depend on our custom packages repository, which would be another input (if my understanding is correct). I'll start working on it. > We can apply your patch in the meantime, so that we can effectively have > several =E2=80=98guix-modular=E2=80=99 jobs for example, but what I mean = to say is that > it can only be a temporary workaround for a flaw that needs to be fixed. Sure, I understand this. I pushed it. > Thanks for your patience. :-) Thanks for yours :-) I'm closing this ticket, and I'll open a new one for the 'real' patch. Cl=C3=A9ment