forked from lix-project/lix
Add a test for the remote caching of CA derivations
This commit is contained in:
parent
df9d4f88d5
commit
93b5a59b67
3 changed files with 27 additions and 3 deletions
21
tests/ca/substitute.sh
Normal file
21
tests/ca/substitute.sh
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
# Ensure that binary substitution works properly with ca derivations
|
||||||
|
|
||||||
|
source common.sh
|
||||||
|
|
||||||
|
sed -i 's/experimental-features .*/& ca-derivations ca-references/' "$NIX_CONF_DIR"/nix.conf
|
||||||
|
|
||||||
|
export REMOTE_STORE=file://$TEST_ROOT/binary_cache
|
||||||
|
|
||||||
|
buildDrvs () {
|
||||||
|
nix build --file ./content-addressed.nix -L --no-link "$@"
|
||||||
|
}
|
||||||
|
|
||||||
|
# Populate the remote cache
|
||||||
|
buildDrvs --post-build-hook ../push-to-store.sh
|
||||||
|
|
||||||
|
# Restart the build on an empty store, ensuring that we don't build
|
||||||
|
clearStore
|
||||||
|
buildDrvs --substitute --substituters $REMOTE_STORE --no-require-sigs -j0
|
||||||
|
|
|
@ -41,7 +41,8 @@ nix_tests = \
|
||||||
build.sh \
|
build.sh \
|
||||||
compute-levels.sh \
|
compute-levels.sh \
|
||||||
ca/build.sh \
|
ca/build.sh \
|
||||||
ca/nix-copy.sh
|
ca/nix-copy.sh \
|
||||||
|
ca/substitute.sh
|
||||||
# parallel.sh
|
# parallel.sh
|
||||||
|
|
||||||
install-tests += $(foreach x, $(nix_tests), tests/$(x))
|
install-tests += $(foreach x, $(nix_tests), tests/$(x))
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
echo Pushing "$@" to "$REMOTE_STORE"
|
set -x
|
||||||
printf "%s" "$OUT_PATHS" | xargs -d: nix copy --to "$REMOTE_STORE" --no-require-sigs
|
|
||||||
|
echo Pushing "$OUT_PATHS" to "$REMOTE_STORE"
|
||||||
|
printf "%s" "$DRV_PATH" | xargs nix copy --to "$REMOTE_STORE" --no-require-sigs
|
||||||
|
|
Loading…
Reference in a new issue