diff options
author | Eelco Dolstra <edolstra@gmail.com> | 2023-08-22 19:29:25 +0200 |
---|---|---|
committer | Eelco Dolstra <edolstra@gmail.com> | 2023-08-22 21:51:26 +0200 |
commit | 81045f243f91adcd44da0080c9ac83d2c4176125 (patch) | |
tree | 8618a71ccad18c52952f8922da1f36b584a0b03d /tests/tarball.sh | |
parent | 3fcdea4ca0f362d21637002918b49cd41358e8e2 (diff) |
Tarball trees: Propagate lastModified
This makes them behave consistently with GitHub/GitLab flakes.
Diffstat (limited to 'tests/tarball.sh')
-rw-r--r-- | tests/tarball.sh | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/tests/tarball.sh b/tests/tarball.sh index 5f39658c9..6e621a28c 100644 --- a/tests/tarball.sh +++ b/tests/tarball.sh @@ -9,6 +9,7 @@ rm -rf $tarroot mkdir -p $tarroot cp dependencies.nix $tarroot/default.nix cp config.nix dependencies.builder*.sh $tarroot/ +touch -d '@1000000000' $tarroot $tarroot/* hash=$(nix hash path $tarroot) @@ -36,6 +37,8 @@ test_tarball() { nix-build -o $TEST_ROOT/result -E "import (fetchTree { type = \"tarball\"; url = file:///does-not-exist/must-remain-unused/$tarball; narHash = \"$hash\"; })" expectStderr 102 nix-build -o $TEST_ROOT/result -E "import (fetchTree { type = \"tarball\"; url = file://$tarball; narHash = \"sha256-xdKv2pq/IiwLSnBBJXW8hNowI4MrdZfW+SYqDQs7Tzc=\"; })" | grep 'NAR hash mismatch in input' + [[ $(nix eval --impure --expr "(fetchTree file://$tarball).lastModified") = 1000000000 ]] + nix-instantiate --strict --eval -E "!((import (fetchTree { type = \"tarball\"; url = file://$tarball; narHash = \"$hash\"; })) ? submodules)" >&2 nix-instantiate --strict --eval -E "!((import (fetchTree { type = \"tarball\"; url = file://$tarball; narHash = \"$hash\"; })) ? submodules)" 2>&1 | grep 'true' |