mirror of
https://github.com/NixOS/nix.git
synced 2024-11-25 16:23:02 +00:00
Test: Replace --option with the corresponding flag
This commit is contained in:
parent
91a1987607
commit
193330d321
@ -16,9 +16,9 @@ basicTests() {
|
||||
clearStore
|
||||
clearCacheCache
|
||||
|
||||
nix-env --option binary-caches "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "---"
|
||||
nix-env --substituters "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "---"
|
||||
|
||||
nix-store --option binary-caches "file://$cacheDir" --no-require-sigs -r $outPath
|
||||
nix-store --substituters "file://$cacheDir" --no-require-sigs -r $outPath
|
||||
|
||||
[ -x $outPath/program ]
|
||||
|
||||
@ -28,13 +28,13 @@ basicTests() {
|
||||
clearCacheCache
|
||||
echo "WantMassQuery: 1" >> $cacheDir/nix-cache-info
|
||||
|
||||
nix-env --option binary-caches "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "--S"
|
||||
nix-env --option binary-caches "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "--S"
|
||||
nix-env --substituters "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "--S"
|
||||
nix-env --substituters "file://$cacheDir" -f dependencies.nix -qas \* | grep -- "--S"
|
||||
|
||||
x=$(nix-env -f dependencies.nix -qas \* --prebuilt-only)
|
||||
[ -z "$x" ]
|
||||
|
||||
nix-store --option binary-caches "file://$cacheDir" --no-require-sigs -r $outPath
|
||||
nix-store --substituters "file://$cacheDir" --no-require-sigs -r $outPath
|
||||
|
||||
nix-store --check-validity $outPath
|
||||
nix-store -qR $outPath | grep input-2
|
||||
@ -63,7 +63,7 @@ mv $nar $nar.good
|
||||
mkdir -p $TEST_ROOT/empty
|
||||
nix-store --dump $TEST_ROOT/empty | xz > $nar
|
||||
|
||||
nix-build --option binary-caches "file://$cacheDir" --no-require-sigs dependencies.nix -o $TEST_ROOT/result 2>&1 | tee $TEST_ROOT/log
|
||||
nix-build --substituters "file://$cacheDir" --no-require-sigs dependencies.nix -o $TEST_ROOT/result 2>&1 | tee $TEST_ROOT/log
|
||||
grep -q "hash mismatch" $TEST_ROOT/log
|
||||
|
||||
mv $nar.good $nar
|
||||
@ -73,7 +73,7 @@ mv $nar.good $nar
|
||||
clearStore
|
||||
clearCacheCache
|
||||
|
||||
if nix-store --option binary-caches "file://$cacheDir" -r $outPath; then
|
||||
if nix-store --substituters "file://$cacheDir" -r $outPath; then
|
||||
echo "unsigned binary cache incorrectly accepted"
|
||||
exit 1
|
||||
fi
|
||||
@ -83,12 +83,12 @@ fi
|
||||
# corresponding NAR has disappeared.
|
||||
clearStore
|
||||
|
||||
nix-build --option binary-caches "file://$cacheDir" dependencies.nix --dry-run # get info
|
||||
nix-build --substituters "file://$cacheDir" dependencies.nix --dry-run # get info
|
||||
|
||||
mkdir $cacheDir/tmp
|
||||
mv $cacheDir/*.nar* $cacheDir/tmp/
|
||||
|
||||
NIX_DEBUG_SUBST=1 nix-build --option binary-caches "file://$cacheDir" dependencies.nix -o $TEST_ROOT/result --fallback
|
||||
NIX_DEBUG_SUBST=1 nix-build --substituters "file://$cacheDir" dependencies.nix -o $TEST_ROOT/result --fallback
|
||||
|
||||
mv $cacheDir/tmp/* $cacheDir/
|
||||
|
||||
@ -99,7 +99,7 @@ clearStore
|
||||
|
||||
rm $(grep -l "StorePath:.*dependencies-input-2" $cacheDir/*.narinfo)
|
||||
|
||||
nix-build --option binary-caches "file://$cacheDir" --no-require-sigs dependencies.nix -o $TEST_ROOT/result 2>&1 | tee $TEST_ROOT/log
|
||||
nix-build --substituters "file://$cacheDir" --no-require-sigs dependencies.nix -o $TEST_ROOT/result 2>&1 | tee $TEST_ROOT/log
|
||||
grep -q "copying path" $TEST_ROOT/log
|
||||
|
||||
|
||||
@ -124,18 +124,18 @@ nix copy --to file://$cacheDir?secret-key=$TEST_ROOT/sk1 $outPath
|
||||
clearStore
|
||||
clearCacheCache
|
||||
|
||||
(! nix-store -r $outPath --option binary-caches "file://$cacheDir")
|
||||
(! nix-store -r $outPath --substituters "file://$cacheDir")
|
||||
|
||||
|
||||
# And it should fail if we provide an incorrect key.
|
||||
clearStore
|
||||
clearCacheCache
|
||||
|
||||
(! nix-store -r $outPath --option binary-caches "file://$cacheDir" --option trusted-public-keys "$badKey")
|
||||
(! nix-store -r $outPath --substituters "file://$cacheDir" --trusted-public-keys "$badKey")
|
||||
|
||||
|
||||
# It should succeed if we provide the correct key.
|
||||
nix-store -r $outPath --option binary-caches "file://$cacheDir" --option trusted-public-keys "$otherKey $publicKey"
|
||||
nix-store -r $outPath --substituters "file://$cacheDir" --trusted-public-keys "$otherKey $publicKey"
|
||||
|
||||
|
||||
# It should fail if we corrupt the .narinfo.
|
||||
@ -152,10 +152,10 @@ done
|
||||
|
||||
clearCacheCache
|
||||
|
||||
(! nix-store -r $outPath --option binary-caches "file://$cacheDir2" --option trusted-public-keys "$publicKey")
|
||||
(! nix-store -r $outPath --substituters "file://$cacheDir2" --trusted-public-keys "$publicKey")
|
||||
|
||||
# If we provide a bad and a good binary cache, it should succeed.
|
||||
|
||||
nix-store -r $outPath --option binary-caches "file://$cacheDir2 file://$cacheDir" --option trusted-public-keys "$publicKey"
|
||||
nix-store -r $outPath --substituters "file://$cacheDir2 file://$cacheDir" --trusted-public-keys "$publicKey"
|
||||
|
||||
fi # HAVE_LIBSODIUM
|
||||
|
@ -5,7 +5,7 @@ clearStore
|
||||
# Test fetching a flat file.
|
||||
hash=$(nix-hash --flat --type sha256 ./fetchurl.sh)
|
||||
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file://$(pwd)/fetchurl.sh --argstr sha256 $hash --no-out-link --option hashed-mirrors '')
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file://$(pwd)/fetchurl.sh --argstr sha256 $hash --no-out-link --hashed-mirrors '')
|
||||
|
||||
cmp $outPath fetchurl.sh
|
||||
|
||||
@ -14,7 +14,7 @@ clearStore
|
||||
|
||||
hash=$(nix hash-file --type sha512 --base64 ./fetchurl.sh)
|
||||
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file://$(pwd)/fetchurl.sh --argstr sha512 $hash --no-out-link --option hashed-mirrors '')
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file://$(pwd)/fetchurl.sh --argstr sha512 $hash --no-out-link --hashed-mirrors '')
|
||||
|
||||
cmp $outPath fetchurl.sh
|
||||
|
||||
@ -29,7 +29,7 @@ rm -rf $mirror
|
||||
mkdir -p $mirror/sha512
|
||||
ln -s $(pwd)/fetchurl.sh $mirror/sha512/$hash32
|
||||
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file:///no-such-dir/fetchurl.sh --argstr sha512 $hash --no-out-link --option hashed-mirrors "file://$mirror")
|
||||
outPath=$(nix-build '<nix/fetchurl.nix>' --argstr url file:///no-such-dir/fetchurl.sh --argstr sha512 $hash --no-out-link --hashed-mirrors "file://$mirror")
|
||||
|
||||
# Test unpacking a NAR.
|
||||
rm -rf $TEST_ROOT/archive
|
||||
|
@ -16,7 +16,7 @@ rm -rf $TEST_ROOT/store0
|
||||
export NIX_STORE_DIR=/my/store
|
||||
export NIX_REMOTE=$TEST_ROOT/store0
|
||||
|
||||
outPath=$(nix-build dependencies.nix --no-out-link --option sandbox-paths /nix/store)
|
||||
outPath=$(nix-build dependencies.nix --no-out-link --sandbox-paths /nix/store)
|
||||
|
||||
[[ $outPath =~ /my/store/.*-dependencies ]]
|
||||
|
||||
|
@ -11,5 +11,5 @@ path=$(nix-build dependencies.nix --no-out-link)
|
||||
clearStore
|
||||
rm -rf $NIX_LOG_DIR
|
||||
(! nix-store -l $path)
|
||||
nix-build dependencies.nix --no-out-link --option compress-build-log true
|
||||
nix-build dependencies.nix --no-out-link --compress-build-log
|
||||
[ "$(nix-store -l $path)" = FOO ]
|
||||
|
@ -59,5 +59,5 @@ fi
|
||||
|
||||
echo "collecting garbage..."
|
||||
rm $TEST_ROOT/result*
|
||||
nix-store --gc --option keep-derivations true --option keep-outputs true
|
||||
nix-store --gc --keep-derivations --keep-outputs
|
||||
nix-store --gc --print-roots
|
||||
|
@ -2,8 +2,8 @@ source common.sh
|
||||
|
||||
clearStore
|
||||
|
||||
outPath1=$(echo 'with import ./config.nix; mkDerivation { name = "foo1"; builder = builtins.toFile "builder" "mkdir $out; echo hello > $out/foo"; }' | nix-build - --no-out-link --option auto-optimise-store true)
|
||||
outPath2=$(echo 'with import ./config.nix; mkDerivation { name = "foo2"; builder = builtins.toFile "builder" "mkdir $out; echo hello > $out/foo"; }' | nix-build - --no-out-link --option auto-optimise-store true)
|
||||
outPath1=$(echo 'with import ./config.nix; mkDerivation { name = "foo1"; builder = builtins.toFile "builder" "mkdir $out; echo hello > $out/foo"; }' | nix-build - --no-out-link --auto-optimise-store)
|
||||
outPath2=$(echo 'with import ./config.nix; mkDerivation { name = "foo2"; builder = builtins.toFile "builder" "mkdir $out; echo hello > $out/foo"; }' | nix-build - --no-out-link --auto-optimise-store)
|
||||
|
||||
inode1="$(stat --format=%i $outPath1/foo)"
|
||||
inode2="$(stat --format=%i $outPath2/foo)"
|
||||
|
@ -51,7 +51,7 @@ nix copy --to file://$cacheDir $path
|
||||
chmod u+w $path2
|
||||
rm -rf $path2
|
||||
|
||||
nix-store --verify --check-contents --repair --option binary-caches "file://$cacheDir" --no-require-sigs
|
||||
nix-store --verify --check-contents --repair --substituters "file://$cacheDir" --no-require-sigs
|
||||
|
||||
if [ "$(nix-hash $path2)" != "$hash" -o -e $path2/bad ]; then
|
||||
echo "path not repaired properly" >&2
|
||||
@ -69,7 +69,7 @@ if nix-store --verify-path $path2; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
nix-store --repair-path $path2 --option binary-caches "file://$cacheDir" --no-require-sigs
|
||||
nix-store --repair-path $path2 --substituters "file://$cacheDir" --no-require-sigs
|
||||
|
||||
if [ "$(nix-hash $path2)" != "$hash" -o -e $path2/bad ]; then
|
||||
echo "path not repaired properly" >&2
|
||||
|
@ -2,19 +2,19 @@ source common.sh
|
||||
|
||||
clearStore
|
||||
|
||||
nix-instantiate --option restrict-eval true --eval -E '1 + 2'
|
||||
(! nix-instantiate --option restrict-eval true ./simple.nix)
|
||||
nix-instantiate --option restrict-eval true ./simple.nix -I src=.
|
||||
nix-instantiate --option restrict-eval true ./simple.nix -I src1=simple.nix -I src2=config.nix -I src3=./simple.builder.sh
|
||||
nix-instantiate --restrict-eval --eval -E '1 + 2'
|
||||
(! nix-instantiate --restrict-eval ./simple.nix)
|
||||
nix-instantiate --restrict-eval ./simple.nix -I src=.
|
||||
nix-instantiate --restrict-eval ./simple.nix -I src1=simple.nix -I src2=config.nix -I src3=./simple.builder.sh
|
||||
|
||||
(! nix-instantiate --option restrict-eval true --eval -E 'builtins.readFile ./simple.nix')
|
||||
nix-instantiate --option restrict-eval true --eval -E 'builtins.readFile ./simple.nix' -I src=..
|
||||
(! nix-instantiate --restrict-eval --eval -E 'builtins.readFile ./simple.nix')
|
||||
nix-instantiate --restrict-eval --eval -E 'builtins.readFile ./simple.nix' -I src=..
|
||||
|
||||
(! nix-instantiate --option restrict-eval true --eval -E 'builtins.readDir ../src/boost')
|
||||
nix-instantiate --option restrict-eval true --eval -E 'builtins.readDir ../src/boost' -I src=../src
|
||||
(! nix-instantiate --restrict-eval --eval -E 'builtins.readDir ../src/boost')
|
||||
nix-instantiate --restrict-eval --eval -E 'builtins.readDir ../src/boost' -I src=../src
|
||||
|
||||
(! nix-instantiate --option restrict-eval true --eval -E 'let __nixPath = [ { prefix = "foo"; path = ./.; } ]; in <foo>')
|
||||
nix-instantiate --option restrict-eval true --eval -E 'let __nixPath = [ { prefix = "foo"; path = ./.; } ]; in <foo>' -I src=.
|
||||
(! nix-instantiate --restrict-eval --eval -E 'let __nixPath = [ { prefix = "foo"; path = ./.; } ]; in <foo>')
|
||||
nix-instantiate --restrict-eval --eval -E 'let __nixPath = [ { prefix = "foo"; path = ./.; } ]; in <foo>' -I src=.
|
||||
|
||||
p=$(nix eval --raw "(builtins.fetchurl file://$(pwd)/restricted.sh)" --restrict-eval --allowed-uris "file://$(pwd)")
|
||||
cmp $p restricted.sh
|
||||
|
@ -20,7 +20,7 @@ makeTest {
|
||||
startAll;
|
||||
|
||||
# Copying to /tmp should succeed.
|
||||
$machine->succeed('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
$machine->succeed('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
")\' ');
|
||||
@ -30,7 +30,7 @@ makeTest {
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
# Creating a setuid binary should fail.
|
||||
$machine->fail('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
$machine->fail('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
chmod 4755 /tmp/id
|
||||
@ -41,7 +41,7 @@ makeTest {
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
# Creating a setgid binary should fail.
|
||||
$machine->fail('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
$machine->fail('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" {} "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
chmod 2755 /tmp/id
|
||||
@ -52,7 +52,7 @@ makeTest {
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
# The checks should also work on 32-bit binaries.
|
||||
$machine->fail('nix-build --option sandbox false -E \'(with import <nixpkgs> { system = "i686-linux"; }; runCommand "foo" {} "
|
||||
$machine->fail('nix-build --no-sandbox -E \'(with import <nixpkgs> { system = "i686-linux"; }; runCommand "foo" {} "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
chmod 2755 /tmp/id
|
||||
@ -63,7 +63,7 @@ makeTest {
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
# The tests above use fchmodat(). Test chmod() as well.
|
||||
$machine->succeed('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
$machine->succeed('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
perl -e \"chmod 0666, qw(/tmp/id) or die\"
|
||||
@ -73,7 +73,7 @@ makeTest {
|
||||
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
$machine->fail('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
$machine->fail('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
perl -e \"chmod 04755, qw(/tmp/id) or die\"
|
||||
@ -84,7 +84,7 @@ makeTest {
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
# And test fchmod().
|
||||
$machine->succeed('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
$machine->succeed('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
perl -e \"my \\\$x; open \\\$x, qw(/tmp/id); chmod 01750, \\\$x or die\"
|
||||
@ -94,7 +94,7 @@ makeTest {
|
||||
|
||||
$machine->succeed("rm /tmp/id");
|
||||
|
||||
$machine->fail('nix-build --option sandbox false -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
$machine->fail('nix-build --no-sandbox -E \'(with import <nixpkgs> {}; runCommand "foo" { buildInputs = [ perl ]; } "
|
||||
mkdir -p $out
|
||||
cp ${pkgs.coreutils}/bin/id /tmp/id
|
||||
perl -e \"my \\\$x; open \\\$x, qw(/tmp/id); chmod 04777, \\\$x or die\"
|
||||
|
@ -1,4 +1,4 @@
|
||||
#! @ENV_PROG@ nix-shell
|
||||
#! nix-shell -I nixpkgs=shell.nix --option use-substitutes false
|
||||
#! nix-shell -I nixpkgs=shell.nix --no-use-substitutes
|
||||
#! nix-shell --pure -i bash -p foo bar
|
||||
echo "$(foo) $(bar) $@"
|
||||
|
@ -15,7 +15,7 @@ if ! echo "$messages" | grep -q "timed out"; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if nix-build -Q timeout.nix -A infiniteLoop --option max-build-log-size 100; then
|
||||
if nix-build -Q timeout.nix -A infiniteLoop --max-build-log-size 100; then
|
||||
echo "build should have failed"
|
||||
exit 1
|
||||
fi
|
||||
|
Loading…
Reference in New Issue
Block a user