aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2014-10-09 13:38:16 +0200
committerLudovic Courtès <ludo@gnu.org>2014-10-09 23:51:19 +0200
commit4938b0eead9b1f34883c166a16c769a5db03edd9 (patch)
tree6dca363040a808a928086c927106dac177efd898
parent9176607ec4cffb85b46e71af49bbc8a330aec5c3 (diff)
downloadguix-4938b0eead9b1f34883c166a16c769a5db03edd9.tar
guix-4938b0eead9b1f34883c166a16c769a5db03edd9.tar.gz
substitute-binary: Ignore $GUIX_BINARY_SUBSTITUTE_URL.
* guix/scripts/substitute-binary.scm (%cache-url): Ignore the 'GUIX_BINARY_SUBSTITUTE_URL' environment variable. * test-env.in: Invoke 'guix-daemon' with '--substitute-urls'. * tests/substitute-binary.scm: Set '%cache-url' to the value of 'GUIX_BINARY_SUBSTITUTE_URL'.
-rwxr-xr-xguix/scripts/substitute-binary.scm27
-rw-r--r--test-env.in3
-rw-r--r--tests/substitute-binary.scm3
3 files changed, 18 insertions, 15 deletions
diff --git a/guix/scripts/substitute-binary.scm b/guix/scripts/substitute-binary.scm
index 7a286426a1..a2d0cab727 100755
--- a/guix/scripts/substitute-binary.scm
+++ b/guix/scripts/substitute-binary.scm
@@ -625,20 +625,19 @@ found."
(assoc-ref (daemon-options) option))
(define %cache-url
- (or (getenv "GUIX_BINARY_SUBSTITUTE_URL")
- (match (and=> (find-daemon-option "substitute-urls")
- string-tokenize)
- ((url)
- url)
- ((head tail ..1)
- ;; Currently we don't handle multiple substitute URLs.
- (warning (_ "these substitute URLs will not be used:~{ ~a~}~%")
- tail)
- head)
- (#f
- ;; This can only happen when this script is not invoked by the
- ;; daemon.
- "http://hydra.gnu.org"))))
+ (match (and=> (find-daemon-option "substitute-urls")
+ string-tokenize)
+ ((url)
+ url)
+ ((head tail ..1)
+ ;; Currently we don't handle multiple substitute URLs.
+ (warning (_ "these substitute URLs will not be used:~{ ~a~}~%")
+ tail)
+ head)
+ (#f
+ ;; This can only happen when this script is not invoked by the
+ ;; daemon.
+ "http://hydra.gnu.org")))
(define (guix-substitute-binary . args)
"Implement the build daemon's substituter protocol."
diff --git a/test-env.in b/test-env.in
index 302118bb6f..792830c29b 100644
--- a/test-env.in
+++ b/test-env.in
@@ -81,7 +81,8 @@ then
# Launch the daemon without chroot support because is may be
# unavailable, for instance if we're not running as root.
"@abs_top_builddir@/pre-inst-env" \
- "@abs_top_builddir@/guix-daemon" --disable-chroot &
+ "@abs_top_builddir@/guix-daemon" --disable-chroot \
+ --substitute-urls="$GUIX_BINARY_SUBSTITUTE_URL" &
daemon_pid=$!
trap "kill $daemon_pid ; rm -rf $NIX_STATE_DIR" EXIT
diff --git a/tests/substitute-binary.scm b/tests/substitute-binary.scm
index 8bde7f6aaf..163cd74593 100644
--- a/tests/substitute-binary.scm
+++ b/tests/substitute-binary.scm
@@ -166,6 +166,9 @@ a file for NARINFO."
(define-syntax-rule (with-narinfo narinfo body ...)
(call-with-narinfo narinfo (lambda () body ...)))
+;; Transmit these options to 'guix substitute-binary'.
+(set! (@@ (guix scripts substitute-binary) %cache-url)
+ (getenv "GUIX_BINARY_SUBSTITUTE_URL"))
(test-equal "query narinfo without signature"
"" ; not substitutable