mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 21:38:07 -05:00
derivations: Add test for #:leaked-env-vars.
* tests/derivations.scm ("derivation #:leaked-env-vars"): New test.
This commit is contained in:
parent
a887fd8d48
commit
44ad33843a
1 changed files with 17 additions and 1 deletions
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -472,6 +472,22 @@ (define (deps path . deps)
|
|||
(build-derivations %store (list drv))
|
||||
#f)))
|
||||
|
||||
;; Here we should get the value of $NIX_STATE_DIR that the daemon sees, which
|
||||
;; is a unique value for each test process; this value is the same as the one
|
||||
;; we see in the process executing this file since it is set by 'test-env'.
|
||||
(test-equal "derivation #:leaked-env-vars"
|
||||
(getenv "NIX_STATE_DIR")
|
||||
(let* ((value (getenv "NIX_STATE_DIR"))
|
||||
(drv (derivation %store "leaked-env-vars" %bash
|
||||
'("-c" "echo -n $NIX_STATE_DIR > $out")
|
||||
#:hash (sha256 (string->utf8 value))
|
||||
#:hash-algo 'sha256
|
||||
#:inputs `((,%bash))
|
||||
#:leaked-env-vars '("NIX_STATE_DIR"))))
|
||||
(and (build-derivations %store (list drv))
|
||||
(call-with-input-file (derivation->output-path drv)
|
||||
get-string-all))))
|
||||
|
||||
|
||||
(define %coreutils
|
||||
(false-if-exception
|
||||
|
|
Loading…
Reference in a new issue