diff --git a/test/lib/copy-src.sh b/test/lib/copy-src.sh index 71bc3a2..93be40c 100644 --- a/test/lib/copy-src.sh +++ b/test/lib/copy-src.sh @@ -3,16 +3,16 @@ tmp=$(mktemp -d '/tmp/nix-bitcoin-src.XXXXX') -# Ignore errors from now on -set +e - # Move source cache if it exists (atomic) -mv /tmp/nix-bitcoin-src $tmp/src 2>/dev/null +mv /tmp/nix-bitcoin-src $tmp/src 2>/dev/null || true -rsync -a --delete --exclude='.git*' "$scriptDir/../" $tmp/src && \ - echo "Copied src" && \ - _nixBitcoinInCopySrc=1 $tmp/src/test/run-tests.sh "${args[@]}" +atExit() { + # Set the current src as the source cache (atomic) + mv -T $tmp/src /tmp/nix-bitcoin-src 2>/dev/null || true + rm -rf $tmp +} +trap "atExit" EXIT -# Set the current src as the source cache (atomic) -mv -T $tmp/src /tmp/nix-bitcoin-src 2>/dev/null -rm -rf $tmp +rsync -a --delete --exclude='.git*' "$scriptDir/../" $tmp/src +echo "Copied src" +_nixBitcoinInCopySrc=1 $tmp/src/test/run-tests.sh "${args[@]}"