nix-super/tests/functional/impure-env.sh

37 lines
839 B
Bash
Executable file

#!/usr/bin/env bash
source common.sh
# Needs the config option 'impure-env' to work
requireDaemonNewerThan "2.19.0"
TODO_NixOS
enableFeatures "configurable-impure-env"
restartDaemon
varTest() {
local var="$1"; shift
local value="$1"; shift
nix build --no-link -vL --argstr var "$var" --argstr value "$value" --impure "$@" --file impure-env.nix
clearStore
}
clearStore
startDaemon
varTest env_name value --impure-env env_name=value
echo 'impure-env = set_in_config=config_value' >> "$test_nix_conf"
set_in_config=daemon_value restartDaemon
varTest set_in_config config_value
varTest set_in_config client_value --impure-env set_in_config=client_value
sed -i -e '/^trusted-users =/d' "$test_nix_conf"
env_name=daemon_value restartDaemon
varTest env_name daemon_value --impure-env env_name=client_value
killDaemon