Archived
1
0
Fork 0
This repository has been archived on 2024-08-07. You can view files and clone it, but cannot push or open issues or pull requests.
guix/tests
Ludovic Courtès 9dfa20a22a
daemon: Let 'guix substitute' perform hash checks.
This way, the hash of the store item can be computed as it is restored,
thereby avoiding an additional file tree traversal ('hashPath' call)
later on in the daemon.  Consequently, it should reduce latency between
subsequent substitute downloads.

This is a followup to 5ff521452b.

* guix/scripts/substitute.scm (narinfo-hash-algorithm+value): New
procedure.
(process-substitution): Wrap INPUT into a hash input port, 'hashed', and
read from it.  Compare the actual and expected hashes, and print a
"hash-mismatch" status line when they differ.  When they match, print
not just "success" but also the nar hash and size.
* nix/libstore/build.cc (class SubstitutionGoal)[expectedHashStr]:
Remove.
(SubstitutionGoal::finished): Tokenize 'status'.  Parse it and handle
"success" and "hash-mismatch" accordingly.  Call 'hashPath' only when
the returned hash is not SHA256.
(SubstitutionGoal::handleChildOutput): Remove 'expectedHashStr'
handling.
* tests/substitute.scm ("substitute, invalid hash"): Rename to...
("substitute, invalid narinfo hash"): ... this.
("substitute, invalid hash"): New test.
2020-12-19 23:25:00 +01:00
..
services services: Add zram-device-service. 2020-08-02 15:54:37 +03:00
accounts.scm
base16.scm
base32.scm build: Remove references to the 'nix-hash' program. 2020-08-29 16:24:17 +02:00
base64.scm
boot-parameters.scm system: Add store-directory-prefix to boot-parameters. 2020-11-01 02:28:38 +01:00
bournish.scm
build-utils.scm Properly deal with build directories containing '~'. 2020-11-16 11:21:42 +01:00
builders.scm
cache.scm Remove workaround for 'time-monotonic' in Guile 2.2.2. 2020-03-22 16:49:47 +01:00
challenge.scm packages: Introduce <content-hash> and use it in <origin>. 2020-05-22 01:29:39 +02:00
channels.scm tests: Add missing copyright line. 2020-10-12 18:23:47 +02:00
civodul.key Add (guix openpgp). 2020-05-04 09:56:12 +02:00
combinators.scm
containers.scm linux-container: Reset jailed root permissions. 2020-10-01 12:51:13 +02:00
cpan.scm
cpio.scm
cran.scm import: cran: Avoid uses of '@@' in the tests. 2020-01-16 23:14:05 +01:00
crate.scm import: crate: Skip tests when Guile-Semver is missing. 2020-12-04 16:59:26 +01:00
cve-sample.json
cve.scm
debug-link.scm
derivations.scm packages: Introduce <content-hash> and use it in <origin>. 2020-05-22 01:29:39 +02:00
discovery.scm
dsa.key Add (guix openpgp). 2020-05-04 09:56:12 +02:00
ed25519.key Add (guix openpgp). 2020-05-04 09:56:12 +02:00
ed25519.sec Add (guix openpgp). 2020-05-04 09:56:12 +02:00
ed25519bis.key git-authenticate: Add tests. 2020-06-05 22:54:06 +02:00
ed25519bis.sec git-authenticate: Add tests. 2020-06-05 22:54:06 +02:00
elpa.scm import: utils: 'recursive-import' accepts an optional version parameter. 2020-12-02 22:09:23 +01:00
file-systems.scm bootloader: grub: Allow booting from a Btrfs subvolume. 2020-05-20 08:30:35 -04:00
gem.scm tests: Remove trailing commas in JSON tests. 2020-04-27 23:29:40 +02:00
gexp.scm store-copy: 'populate-store' can optionally deduplicate files. 2020-12-15 17:32:10 +01:00
git-authenticate.scm tests: Allow 'tests/git-authenticate.scm' to run when git/gpg is missing. 2020-06-28 23:26:53 +02:00
git.scm git: 'commit-difference' really excludes the ancestors of #:excluded. 2020-06-09 00:34:52 +02:00
glob.scm guix: Add globstar support. 2020-12-09 22:25:17 +01:00
gnu-maintenance.scm
grafts.scm
graph.scm graph: Adjust test for recent OCaml changes. 2020-10-20 16:30:15 +02:00
gremlin.scm
guix-archive.sh serialization: 'restore-file' sets canonical timestamp and permissions. 2020-12-15 17:32:09 +01:00
guix-authenticate.sh authenticate: Encode strings as ISO-8859-1. 2020-09-15 14:40:20 +02:00
guix-build-branch.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-build.sh packages: Better preserve object identity when rewriting. 2020-10-20 16:30:15 +02:00
guix-daemon.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-describe.sh
guix-download.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-environment-container.sh environment: Turn "lo" up in network-less containers. 2020-10-05 10:41:59 +02:00
guix-environment.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-gc.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-git-authenticate.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-graph.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-hash.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-lint.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-pack-localstatedir.sh
guix-pack-relocatable.sh tests: pack-relocatable: Ensure commands can run in the current namespace. 2020-12-04 13:12:08 +00:00
guix-pack.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-package-aliases.sh guix build: Record package transformations in manifest entries. 2020-10-02 23:28:09 +02:00
guix-package-net.sh tests: Simplify shell exit status negation; 2020-09-28 21:06:36 -05:00
guix-package.sh guix package: Re-apply package transformation when upgrading. 2020-10-02 23:28:09 +02:00
guix-repl.sh repl: Look for script files in (getcwd). 2020-09-16 16:04:01 +02:00
guix-system.sh tests: Test "guix system search .". 2020-11-06 16:38:12 +01:00
hackage.scm
import-utils.scm import: utils: 'recursive-import' accepts an optional version parameter. 2020-12-02 22:09:23 +01:00
inferior.scm Merge branch 'master' into core-updates 2020-03-21 22:16:02 +01:00
lint.scm tests: lint: Add origin patch file name test cases. 2020-12-07 12:48:26 +01:00
modules.scm
monads.scm
nar.scm nar: Deduplicate files right as they are restored. 2020-12-15 17:32:09 +01:00
networking.scm
offload.scm offload: Modify the build-machine record to accept multiple systems. 2020-08-25 13:45:27 -04:00
opam.scm import: opam: Adjust test to latest 'opam->guix-package' changes. 2020-12-08 22:58:37 +01:00
openpgp.scm openpgp: Fix argument order of 'fxbit-set?'. 2020-09-29 22:53:36 +02:00
pack.scm pack: Build the store database under a UTF-8 locale. 2020-07-20 23:25:09 +02:00
packages.scm packages: Better preserve object identity when rewriting. 2020-10-20 16:30:15 +02:00
pki.scm
print.scm tests: Update expected values for package->code. 2020-04-20 10:57:49 +02:00
processes.scm
profiles.scm profiles: Delete duplicate manifest entries in packages->manifest. 2020-12-07 12:48:26 +01:00
publish.scm publish: Create files in the cache as #o644. 2020-11-09 23:27:09 +01:00
pypi.scm utils: Remove compatibility re-export of 'memoize'. 2020-07-25 19:11:36 +02:00
records.scm records: Improve reporting of "invalid field specifier" errors. 2020-01-16 18:30:57 +01:00
rsa.key Add (guix openpgp). 2020-05-04 09:56:12 +02:00
scripts.scm
search-paths.scm
services.scm
sets.scm
signing-key.pub
signing-key.sec
size.scm
snix.scm
status.scm
store-database.scm database: Remove 'register-path'. 2020-12-15 17:32:11 +01:00
store-deduplication.scm deduplicate: Create the '.links' directory lazily. 2020-12-15 17:32:12 +01:00
store-roots.scm
store.scm tests: Check the build trace for hash mismatches on substitutes. 2020-12-19 23:25:00 +01:00
substitute.scm daemon: Let 'guix substitute' perform hash checks. 2020-12-19 23:25:00 +01:00
swh.scm swh: Adjust 'origin' test. 2020-02-27 23:29:30 +01:00
syscalls.scm tests: Do not fail when network interface aliases are present. 2020-06-28 23:32:52 +02:00
system.scm
test.drv
texlive.scm import: texlive: Avoid uses of '@@' in tests. 2020-01-17 14:22:08 +01:00
transformations.scm guix build: Move transformation options to (guix transformations). 2020-10-31 23:16:43 +01:00
ui.scm tests: Adjust to 'show-manifest-transaction' changes. 2020-03-25 16:02:53 +01:00
union.scm
upstream.scm
utils.scm Use "guile-zlib" and "guile-lzlib" instead of (guix config). 2020-08-24 13:35:24 +02:00
uuid.scm
workers.scm