[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#58017] [PATCH 2/2] substitute: Retry downloading when a nar is unav
From: |
Ludovic Courtès |
Subject: |
[bug#58017] [PATCH 2/2] substitute: Retry downloading when a nar is unavailable. |
Date: |
Sat, 24 Sep 2022 18:22:59 +0200 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/28.1 (gnu/linux) |
Hi Maxime,
Maxime Devos <maximedevos@telenet.be> skribis:
>> +(test-equal "substitute, first URL has narinfo but nar is 404, both URLs
>> authorized"
>> + "Substitutable data."
>> + (with-narinfo*
>> + (string-append %narinfo "Signature: "
>> + (signature-field %narinfo))
>> + %main-substitute-directory
>> +
>> + (with-http-server `((200 ,(string-append %narinfo "Signature: "
>> + (signature-field %narinfo)))
>> + (404 "Sorry, nar is missing!"))
>> + (dynamic-wind
>> + (const #t)
>> + (lambda ()
>> + (parameterize ((substitute-urls
>> + (list (%local-url)
>> + (string-append "file://"
>> +
>> %main-substitute-directory))))
>> + (request-substitution (string-append (%store-prefix)
>> +
>> "/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa-foo")
>> + "substitute-retrieved"))
>> + (call-with-input-file "substitute-retrieved" get-string-all))
>> + (lambda ()
>> + (false-if-exception (delete-file "substitute-retrieved")))))))
>
> Shouldn't it only ignore 'file not found' (ENOENT?) exceptions?
By “it”, do you mean ‘dynamic-wind’ should be replaced by a ‘catch’
form?
We could discuss it, but note that this patch just keeps with the style
of existing tests.
> This test, and some others, can be improved by also checking the
> URI. While currently 'with-http-server' does not support that, there
> are (5 months, with the v1 having seen some reviewing and a v2
> available) patches for that at <https://issues.guix.gnu.org/53389>.
>
> That patch also _requires_ always mentioning the URI, if the cover
> letter is correct. It also allows simplifying the use of '%local-url'
> a bit.
Ah, thanks for the reminder! I’ve just spent most of the day reviewing
patches, but not that one…
Ludo’.
[bug#58017] bug#57978: [PATCH 1/2] substitute: Split nar download., zimoun, 2022/09/23
bug#58017: [PATCH 0/2] Retry nar downloads upon failure, Ludovic Courtès, 2022/09/28