summary refs log tree commit diff
path: root/lib/tests/release.nix
diff options
context:
space:
mode:
authorJohn Ericson <Ericson2314@Yahoo.com>2017-02-09 16:09:47 -0500
committerJohn Ericson <Ericson2314@Yahoo.com>2017-04-17 17:13:01 -0400
commit8c99aab3ea4a9ddbd3918282da7861e674b4e7c4 (patch)
tree5c8a663c775e02ad7c7c714d89095f3cd500e0a0 /lib/tests/release.nix
parentfffcee35f9b2042d4edc5dccb3379972e03ffd84 (diff)
downloadnixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar.gz
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar.bz2
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar.lz
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar.xz
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.tar.zst
nixlib-8c99aab3ea4a9ddbd3918282da7861e674b4e7c4.zip
lib: Fix system parsing, and use for doubles lists
The old hard-coded lists are now used to test system parsing.

In the process, make an `assertTrue` in release lib for eval tests; also
use it in release-cross
Diffstat (limited to 'lib/tests/release.nix')
-rw-r--r--lib/tests/release.nix57
1 files changed, 33 insertions, 24 deletions
diff --git a/lib/tests/release.nix b/lib/tests/release.nix
index f9f57424f7d0..dfa4ca2676d1 100644
--- a/lib/tests/release.nix
+++ b/lib/tests/release.nix
@@ -1,31 +1,40 @@
-{ nixpkgs }:
+{ nixpkgs ? { outPath = (import ../.).cleanSource ../..; revCount = 1234; shortRev = "abcdef"; }
+, # The platforms for which we build Nixpkgs.
+  supportedSystems ? [ builtins.currentSystem ]
+, # Strip most of attributes when evaluating to spare memory usage
+  scrubJobs ? true
+}:
 
-with import ../.. { };
+with import ../../pkgs/top-level/release-lib.nix { inherit supportedSystems scrubJobs; };
 with lib;
 
-stdenv.mkDerivation {
-  name = "nixpkgs-lib-tests";
-  buildInputs = [ nix ];
-  NIX_PATH="nixpkgs=${nixpkgs}";
+{
+  systems = import ./systems.nix { inherit lib assertTrue; };
 
-  buildCommand = ''
-    datadir="${nix}/share"
-    export TEST_ROOT=$(pwd)/test-tmp
-    export NIX_BUILD_HOOK=
-    export NIX_CONF_DIR=$TEST_ROOT/etc
-    export NIX_DB_DIR=$TEST_ROOT/db
-    export NIX_LOCALSTATE_DIR=$TEST_ROOT/var
-    export NIX_LOG_DIR=$TEST_ROOT/var/log/nix
-    export NIX_MANIFESTS_DIR=$TEST_ROOT/var/nix/manifests
-    export NIX_STATE_DIR=$TEST_ROOT/var/nix
-    export NIX_STORE_DIR=$TEST_ROOT/store
-    export PAGER=cat
-    cacheDir=$TEST_ROOT/binary-cache
-    nix-store --init
+  moduleSystem = pkgs.stdenv.mkDerivation {
+    name = "nixpkgs-lib-tests";
+    buildInputs = [ pkgs.nix ];
+    NIX_PATH="nixpkgs=${nixpkgs}";
 
-    cd ${nixpkgs}/lib/tests
-    ./modules.sh
+    buildCommand = ''
+      datadir="${pkgs.nix}/share"
+      export TEST_ROOT=$(pwd)/test-tmp
+      export NIX_BUILD_HOOK=
+      export NIX_CONF_DIR=$TEST_ROOT/etc
+      export NIX_DB_DIR=$TEST_ROOT/db
+      export NIX_LOCALSTATE_DIR=$TEST_ROOT/var
+      export NIX_LOG_DIR=$TEST_ROOT/var/log/nix
+      export NIX_MANIFESTS_DIR=$TEST_ROOT/var/nix/manifests
+      export NIX_STATE_DIR=$TEST_ROOT/var/nix
+      export NIX_STORE_DIR=$TEST_ROOT/store
+      export PAGER=cat
+      cacheDir=$TEST_ROOT/binary-cache
+      nix-store --init
 
-    touch $out
-  '';
+      cd ${nixpkgs}/lib/tests
+      ./modules.sh
+
+      touch $out
+    '';
+  };
 }