unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
* [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json.
@ 2023-05-12  9:45 Simon Tournier
  2023-05-12 11:47 ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Simon Tournier @ 2023-05-12  9:45 UTC (permalink / raw)
  To: 63462; +Cc: Simon Tournier

This format had been discussed in
<https://gitlab.softwareheritage.org/swh/infra/sysadm-environment/-/issues/4868>.

* hydra/build-package-metadata.scm (origin->json)[resolve]: Add the fields
'outputHashAlgo' and 'outputHashMode'.
---
 hydra/build-package-metadata.scm | 16 +++++++++++++---
 1 file changed, 13 insertions(+), 3 deletions(-)

diff --git a/hydra/build-package-metadata.scm b/hydra/build-package-metadata.scm
index 1ddb409..d110d4d 100755
--- a/hydra/build-package-metadata.scm
+++ b/hydra/build-package-metadata.scm
@@ -1,7 +1,7 @@
 #!/usr/bin/env -S guix repl --
 !#
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2020, 2021 Simon Tournier <zimon.toutoune@gmail.com>
+;;; Copyright © 2020, 2021, 2023 Simon Tournier <zimon.toutoune@gmail.com>
 ;;; Copyright © 2023 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
@@ -160,13 +160,23 @@ superseded packages."
                  (else '()))
          ,@(if (or (eq? url-fetch method)
                    (eq? url-fetch/tarbomb method)
-                   (eq? url-fetch/zipbomb method))
+                   (eq? url-fetch/zipbomb method)
+                   (eq? git-fetch method)
+                   (eq? svn-fetch method)
+                   (eq? svn-multi-fetch method)
+                   (eq? hg-fetch method))
                (let* ((content-hash (origin-hash origin))
                       (hash-value (content-hash-value content-hash))
                       (hash-algorithm (content-hash-algorithm content-hash))
                       (algorithm-string (symbol->string hash-algorithm)))
                  `(("integrity" . ,(string-append algorithm-string "-"
-                                                  (base64-encode hash-value)))))
+                                                  (base64-encode hash-value)))
+                   ("outputHashAlgo" . ,algorithm-string)
+                   ("outputHashMode" . ,(if (or (eq? url-fetch method)
+                                                (eq? url-fetch/tarbomb method)
+                                                (eq? url-fetch/zipbomb method))
+                                            "flat"
+                                            "recursive"))))
                '())
          ,@(if (eq? method git-fetch)
                `(("git_ref" . ,(git-reference-commit uri)))

base-commit: 5a6b8cd7286d1c8906beaa35ebba6eff5bae3a79
-- 
2.38.1





^ permalink raw reply related	[flat|nested] 4+ messages in thread

* [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json.
  2023-05-12  9:45 [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json Simon Tournier
@ 2023-05-12 11:47 ` Ludovic Courtès
  2023-05-12 12:12   ` Simon Tournier
  0 siblings, 1 reply; 4+ messages in thread
From: Ludovic Courtès @ 2023-05-12 11:47 UTC (permalink / raw)
  To: Simon Tournier; +Cc: 63462

Hi,

Simon Tournier <zimon.toutoune@gmail.com> skribis:

> This format had been discussed in
> <https://gitlab.softwareheritage.org/swh/infra/sysadm-environment/-/issues/4868>.
>
> * hydra/build-package-metadata.scm (origin->json)[resolve]: Add the fields
> 'outputHashAlgo' and 'outputHashMode'.

Neat, thanks for the update!  (I pushed it on your behalf because you’re
not currently authorized in maintenance.git; please email guix-sysadmin
if you’d like to be there.)

>                   `(("integrity" . ,(string-append algorithm-string "-"
> -                                                  (base64-encode hash-value)))))
> +                                                  (base64-encode hash-value)))
> +                   ("outputHashAlgo" . ,algorithm-string)
> +                   ("outputHashMode" . ,(if (or (eq? url-fetch method)
> +                                                (eq? url-fetch/tarbomb method)
> +                                                (eq? url-fetch/zipbomb method))
> +                                            "flat"
> +                                            "recursive"))))

I wish they had opted for something more expressive (and also with a
more meaningful name :-)) than ‘outputHashMode’, similar to what you did
for ‘guix hash -S’.  But anyway, it does the job!

It looks like SWH will be storing nar hashes; will there be endpoints to
query directories by nar hash?

Thanks,
Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json.
  2023-05-12 11:47 ` Ludovic Courtès
@ 2023-05-12 12:12   ` Simon Tournier
  2023-05-24 14:32     ` Ludovic Courtès
  0 siblings, 1 reply; 4+ messages in thread
From: Simon Tournier @ 2023-05-12 12:12 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: 63462

Hi,

On ven., 12 mai 2023 at 13:47, Ludovic Courtès <ludo@gnu.org> wrote:

>                               (I pushed it on your behalf because you’re
> not currently authorized in maintenance.git; please email guix-sysadmin
> if you’d like to be there.)

Ok, I will.


> I wish they had opted for something more expressive (and also with a
> more meaningful name :-)) than ‘outputHashMode’, similar to what you did
> for ‘guix hash -S’.  But anyway, it does the job!

Well, I am biased. ;-)  Another poor naming inherited from Nix [1]. :-)

1: https://nixos.org/manual/nix/stable/language/advanced-attributes.html


> It looks like SWH will be storing nar hashes; will there be endpoints to
> query directories by nar hash?

This is still ongoing.  IIUC, it’s the last item of SWH issue #4868 [2].

2: https://gitlab.softwareheritage.org/swh/infra/sysadm-environment/-/issues/4868


Cheers,
simon




^ permalink raw reply	[flat|nested] 4+ messages in thread

* [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json.
  2023-05-12 12:12   ` Simon Tournier
@ 2023-05-24 14:32     ` Ludovic Courtès
  0 siblings, 0 replies; 4+ messages in thread
From: Ludovic Courtès @ 2023-05-24 14:32 UTC (permalink / raw)
  To: Simon Tournier; +Cc: 63462

Hi,

Simon Tournier <zimon.toutoune@gmail.com> skribis:

> On ven., 12 mai 2023 at 13:47, Ludovic Courtès <ludo@gnu.org> wrote:

[...]

>> I wish they had opted for something more expressive (and also with a
>> more meaningful name :-)) than ‘outputHashMode’, similar to what you did
>> for ‘guix hash -S’.  But anyway, it does the job!
>
> Well, I am biased. ;-)  Another poor naming inherited from Nix [1]. :-)

Yeah.

BTW, I’ve restarted the relevant mcron job and it’s rolling out now:

--8<---------------cut here---------------start------------->8---
$ wget -qO- https://guix.gnu.org/sources.json |jq |grep output[A-Z] | head
      "outputHashAlgo": "sha256",
      "outputHashMode": "flat"
      "outputHashAlgo": "sha256",
      "outputHashMode": "flat"
      "outputHashAlgo": "sha256",
      "outputHashMode": "recursive",
      "outputHashAlgo": "sha256",
      "outputHashMode": "flat"
      "outputHashAlgo": "sha256",
      "outputHashMode": "flat"
--8<---------------cut here---------------end--------------->8---

>> It looks like SWH will be storing nar hashes; will there be endpoints to
>> query directories by nar hash?
>
> This is still ongoing.  IIUC, it’s the last item of SWH issue #4868 [2].
>
> 2: https://gitlab.softwareheritage.org/swh/infra/sysadm-environment/-/issues/4868

Nice!

Ludo’.




^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2023-05-24 14:34 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-12  9:45 [bug#63462] [PATCH maintenance] hydra: build-package-metadata: Update fields in sources.json Simon Tournier
2023-05-12 11:47 ` Ludovic Courtès
2023-05-12 12:12   ` Simon Tournier
2023-05-24 14:32     ` Ludovic Courtès

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).