30 lines
735 B
Bash
30 lines
735 B
Bash
|
|
test_dir="$(mktemp -d)"
|
|
|
|
mkdir -p "$test_dir"/run
|
|
mkdir -p "$test_dir"/data
|
|
|
|
test_cfg="(import ./config.nix) // {
|
|
runDir=\"${test_dir}/run\";
|
|
dataDir=\"${test_dir}/data\";
|
|
}"
|
|
|
|
entrypoint=$(nix-build --no-out-link -A entrypoint \
|
|
--arg baseConfig "$test_cfg" \
|
|
--arg skipServices '["srv"]')
|
|
|
|
$entrypoint &
|
|
trap "kill $!; wait; rm -rf $test_dir" EXIT
|
|
|
|
# NOTE this is a bit of a hack... the location of the redis socket's source of
|
|
# truth is in default.nix, but it's not clear how to get that from there to
|
|
# here, so we reproduce the calculation here.
|
|
while [ ! -e $test_dir/run/redis ]; do
|
|
echo "waiting for redis unix socket"
|
|
sleep 1
|
|
done
|
|
|
|
nix-shell -A srv.shell \
|
|
--arg baseConfig "$test_cfg" \
|
|
"$@"
|