diff options
author | Silvan Mosberger <silvan.mosberger@tweag.io> | 2023-05-26 18:32:38 +0200 |
---|---|---|
committer | Silvan Mosberger <silvan.mosberger@tweag.io> | 2023-06-01 18:07:33 +0200 |
commit | 013acf2396f451c73b6cd6b0148df21cbaa4c165 (patch) | |
tree | 869baebd78403abc2ff2dd7f958ab4030bff284c | |
parent | 0b6021ee53eb4677e96f28a260db9157b4f19c7a (diff) | |
download | nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar.gz nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar.bz2 nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar.lz nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar.xz nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.tar.zst nixpkgs-013acf2396f451c73b6cd6b0148df21cbaa4c165.zip |
lib/tests: Also run with nixVersions.minimum and nixVersions.unstable
The previous commits ensure that the tests also succeed with those versions
-rw-r--r-- | lib/tests/release.nix | 106 |
1 files changed, 58 insertions, 48 deletions
diff --git a/lib/tests/release.nix b/lib/tests/release.nix index f5c6e81030c..c3bf58db241 100644 --- a/lib/tests/release.nix +++ b/lib/tests/release.nix @@ -2,53 +2,63 @@ # Don't test properties of pkgs.lib, but rather the lib in the parent directory pkgs ? import ../.. {} // { lib = throw "pkgs.lib accessed, but the lib tests should use nixpkgs' lib path directly!"; }, nix ? pkgs.nix, + nixVersions ? [ pkgs.nixVersions.minimum nix pkgs.nixVersions.unstable ], }: -pkgs.runCommand "nixpkgs-lib-tests" { - buildInputs = [ - (import ./check-eval.nix) - (import ./maintainers.nix { - inherit pkgs; - lib = import ../.; - }) - (import ./teams.nix { - inherit pkgs; - lib = import ../.; - }) - (import ../path/tests { - inherit pkgs; - }) - ]; - nativeBuildInputs = [ - nix - ]; - strictDeps = true; -} '' - datadir="${nix}/share" - export TEST_ROOT=$(pwd)/test-tmp - export NIX_BUILD_HOOK= - export NIX_CONF_DIR=$TEST_ROOT/etc - export NIX_LOCALSTATE_DIR=$TEST_ROOT/var - export NIX_LOG_DIR=$TEST_ROOT/var/log/nix - export NIX_STATE_DIR=$TEST_ROOT/var/nix - export NIX_STORE_DIR=$TEST_ROOT/store - export PAGER=cat - cacheDir=$TEST_ROOT/binary-cache - - mkdir -p $NIX_CONF_DIR - echo "experimental-features = nix-command" >> $NIX_CONF_DIR/nix.conf - - nix-store --init - - cp -r ${../.} lib - echo "Running lib/tests/modules.sh" - bash lib/tests/modules.sh - - echo "Running lib/tests/filesystem.sh" - TEST_LIB=$PWD/lib bash lib/tests/filesystem.sh - - echo "Running lib/tests/sources.sh" - TEST_LIB=$PWD/lib bash lib/tests/sources.sh - - touch $out -'' +let + testWithNix = nix: + pkgs.runCommand "nixpkgs-lib-tests-nix-${nix.version}" { + buildInputs = [ + (import ./check-eval.nix) + (import ./maintainers.nix { + inherit pkgs; + lib = import ../.; + }) + (import ./teams.nix { + inherit pkgs; + lib = import ../.; + }) + (import ../path/tests { + inherit pkgs; + }) + ]; + nativeBuildInputs = [ + nix + ]; + strictDeps = true; + } '' + datadir="${nix}/share" + export TEST_ROOT=$(pwd)/test-tmp + export NIX_BUILD_HOOK= + export NIX_CONF_DIR=$TEST_ROOT/etc + export NIX_LOCALSTATE_DIR=$TEST_ROOT/var + export NIX_LOG_DIR=$TEST_ROOT/var/log/nix + export NIX_STATE_DIR=$TEST_ROOT/var/nix + export NIX_STORE_DIR=$TEST_ROOT/store + export PAGER=cat + cacheDir=$TEST_ROOT/binary-cache + + mkdir -p $NIX_CONF_DIR + echo "experimental-features = nix-command" >> $NIX_CONF_DIR/nix.conf + + nix-store --init + + cp -r ${../.} lib + echo "Running lib/tests/modules.sh" + bash lib/tests/modules.sh + + echo "Running lib/tests/filesystem.sh" + TEST_LIB=$PWD/lib bash lib/tests/filesystem.sh + + echo "Running lib/tests/sources.sh" + TEST_LIB=$PWD/lib bash lib/tests/sources.sh + + mkdir $out + echo success > $out/${nix.version} + ''; + +in + pkgs.symlinkJoin { + name = "nixpkgs-lib-tests"; + paths = map testWithNix nixVersions; + } |