mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 07:26:13 -05:00
perform-download: Allow use of ‘download-nar’ for ‘--check’ builds.
Previously, the nar fallback would always fail on ‘--check’ build because the output directory in that case is different from the store file name. This change fixes that. * guix/build/git.scm (git-fetch-with-fallback): Add #:item parameter and pass it to ‘download-nar’. * guix/scripts/perform-download.scm (perform-git-download): Pass #:item to ‘git-fetch-with-fallback’. Change-Id: I30fc948718e99574005150bba5215a51ef153c49
This commit is contained in:
parent
3e9bea7ee3
commit
abd0cca2a9
2 changed files with 11 additions and 6 deletions
|
@ -92,19 +92,21 @@ (define* (git-fetch url commit directory
|
|||
|
||||
|
||||
(define* (git-fetch-with-fallback url commit directory
|
||||
#:key (git-command "git")
|
||||
#:key (item directory)
|
||||
(git-command "git")
|
||||
hash hash-algorithm
|
||||
lfs? recursive?)
|
||||
"Like 'git-fetch', fetch COMMIT from URL into DIRECTORY, but fall back to
|
||||
alternative methods when fetching from URL fails: attempt to download a nar,
|
||||
and if that also fails, download from the Software Heritage archive. When
|
||||
HASH and HASH-ALGORITHM are provided, they are interpreted as the nar hash of
|
||||
the directory of interested and are used as its content address at SWH."
|
||||
alternative methods when fetching from URL fails: attempt to download a nar
|
||||
for ITEM, and if that also fails, download from the Software Heritage archive.
|
||||
When HASH and HASH-ALGORITHM are provided, they are interpreted as the nar
|
||||
hash of the directory of interested and are used as its content address at
|
||||
SWH."
|
||||
(or (git-fetch url commit directory
|
||||
#:lfs? lfs?
|
||||
#:recursive? recursive?
|
||||
#:git-command git-command)
|
||||
(download-nar directory)
|
||||
(download-nar item directory)
|
||||
|
||||
;; As a last resort, attempt to download from Software Heritage.
|
||||
;; Disable X.509 certificate verification to avoid depending
|
||||
|
|
|
@ -114,10 +114,13 @@ (define* (perform-git-download drv output
|
|||
;; on ambient authority, hence the PATH value below.
|
||||
(setenv "PATH" "/run/current-system/profile/bin:/bin:/usr/bin")
|
||||
|
||||
;; Note: When doing a '--check' build, DRV-OUTPUT and OUTPUT are
|
||||
;; different, hence the #:item argument below.
|
||||
(git-fetch-with-fallback url commit output
|
||||
#:hash hash
|
||||
#:hash-algorithm algo
|
||||
#:recursive? recursive?
|
||||
#:item (derivation-output-path drv-output)
|
||||
#:git-command %git))))
|
||||
|
||||
(define (assert-low-privileges)
|
||||
|
|
Loading…
Reference in a new issue