1
0
Fork 0
mirror of https://github.com/NixOS/nix synced 2024-09-19 10:50:24 -04:00
nix/tests/functional
Théophane Hufschmitt 1d3696f0fb Run the builds in a daemon-controled directory
Instead of running the builds under
`$TMPDIR/{unique-build-directory-owned-by-the-build-user}`, run them
under `$TMPDIR/{unique-build-directory-owned-by-the-daemon}/{subdir-owned-by-the-build-user}`
where the build directory is only readable and traversable by the daemon user.

This achieves two things:

1. It prevents builders from making their build directory world-readable
   (or even writeable), which would allow the outside world to interact
   with them.
2. It prevents external processes running as the build user (either
   because that somehow leaked, maybe as a consequence of 1., or because
   `build-users` isn't in use) from gaining access to the build
   directory.
2024-06-21 17:06:19 +02:00
..
ca Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
common Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
config Add functional tests for include directive in nix config file 2024-04-02 18:10:36 -07:00
dyn-drv housekeeping: shellcheck for tests/functional/dyn-drv/text-hashed-output.sh 2024-06-12 17:41:16 -04:00
flakes More quote coalescing 2024-06-12 17:47:54 -04:00
git-hashing Fix git-hashing/simple.sh 2024-03-23 22:08:52 -04:00
lang eval-fail-infinite-recursion-lambda: Reduce recursion depth 2024-06-13 13:55:42 +02:00
local-overlay-store Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
nested-sandboxing Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
plugins Allow for ergnomically putting Unix-only files in subdirs by creating INLCUDE_$(pkg) vars 2024-03-27 12:01:59 -04:00
test-libstoreconsumer Allow for ergnomically putting Unix-only files in subdirs by creating INLCUDE_$(pkg) vars 2024-03-27 12:01:59 -04:00
add.sh housekeeping: shellcheck test/functional/add.sh 2024-06-02 13:41:51 -07:00
bash-profile.sh housekeeping: shellcheck for tests/functional/bash-profile.sh 2024-06-12 16:58:25 -04:00
big-derivation-attr.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
binary-cache-build-remote.sh housekeeping: shellcheck for tests/functional/binary-cache-build-remote.sh 2024-06-12 16:58:25 -04:00
binary-cache.sh housekeeping: shellcheck for tests/functional/ca/build-cache.sh 2024-06-12 17:41:16 -04:00
brotli.sh housekeeping: shellcheck for tests/functional/brotli.sh 2024-06-12 17:41:15 -04:00
build-delete.sh housekeeping: shellcheck for tests/functional/build-delete.sh 2024-06-12 17:41:16 -04:00
build-dry.sh housekeeping: shellcheck for tests/functional/build-dry.sh 2024-06-12 17:41:16 -04:00
build-hook-ca-fixed.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook-ca-floating.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-hook.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
build-remote-content-addressed-fixed.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-content-addressed-floating.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-input-addressed.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless-after.sh Shellcheck some test scripts 2024-05-28 12:32:22 -04:00
build-remote-trustless-should-fail-0.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless-should-pass-0.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless-should-pass-1.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless-should-pass-2.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless-should-pass-3.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote-trustless.sh Shellcheck some test scripts 2024-05-28 12:32:22 -04:00
build-remote-with-mounted-ssh-ng.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
build-remote.sh Shellcheck some test scripts 2024-05-28 12:32:22 -04:00
build.sh Fix empty outputsToInstall for InstallableAttrPath 2024-06-02 14:26:18 +03:00
ca-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
case-hack.sh housekeeping: shellcheck for tests/functional/case-hacks.sh 2024-06-12 17:41:16 -04:00
case.nar Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-refs.sh housekeeping: shellcheck for tests/functional/check-refs.sh 2024-06-12 17:41:16 -04:00
check-reqs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check-reqs.sh housekeeping: shellcheck for tests/functional/check-reqs.sh 2024-06-12 17:41:16 -04:00
check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
check.sh Run the builds in a daemon-controled directory 2024-06-21 17:06:19 +02:00
chroot-store.sh housekeeping: shellcheck for tests/functional/chroot-store.sh 2024-06-12 17:41:16 -04:00
common.sh Shellcheck some test scripts 2024-05-28 12:32:22 -04:00
completions.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
compression-levels.sh housekeeping: shellcheck for tests/functional/compression-levels.sh 2024-06-12 17:41:16 -04:00
compute-levels.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
config.nix.in Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
config.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
db-migration.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
debugger.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
dependencies.builder0.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dependencies.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
derivation-json.sh housekeeping: shellcheck for tests/functional/derivation-json.sh 2024-06-12 17:41:16 -04:00
dummy Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
dump-db.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
eval-store.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
eval.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
experimental-features.sh housekeeping: shellcheck for tests/functional/experimental-features.sh 2024-06-12 17:41:16 -04:00
export-graph.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
export-graph.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
export.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
extra-sandbox-profile.nix libstore: check additionalSandboxProfile 2024-05-06 17:37:08 +02:00
extra-sandbox-profile.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fetchClosure.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fetchGit.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fetchGitRefs.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
fetchGitSubmodules.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fetchGitVerification.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fetchMercurial.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fetchPath.sh housekeeping: shellcheck for tests/functional/fetchPath.sh 2024-06-12 17:41:16 -04:00
fetchTree-file.sh housekeeping: shellcheck for tests/functional/fetchTree-file.sh 2024-06-12 17:41:16 -04:00
fetchurl.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
filter-source.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
filter-source.sh housekeeping: shellcheck for tests/functional/filter-source.sh 2024-06-12 17:41:16 -04:00
fixed.builder1.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.builder2.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fixed.nix Make outputHashAlgo accept "nar", stay in sync 2024-04-09 16:17:23 -04:00
fixed.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fmt.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
fmt.simple.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
fod-failing.nix nix3-build: show all FOD errors with --keep-going 2024-05-17 18:48:52 +02:00
function-trace.sh housekeeping: shellcheck for tests/functional/function-trace.sh 2024-06-12 17:41:16 -04:00
gc-auto.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
gc-concurrent.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-concurrent.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
gc-concurrent2.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-non-blocking.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
gc-runtime.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
gc-runtime.sh housekeeping: shellcheck for tests/functional/gc-runtime.sh 2024-06-12 17:41:16 -04:00
gc.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
hash-check.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
hash-convert.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
hash-path.sh housekeeping: shellcheck for tests/functional/hash-path.sh 2024-06-12 17:41:16 -04:00
help.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
hermetic.nix Activate hermetic.nix variation only for new layered store tests 2024-02-29 10:06:53 -05:00
ifd.nix remote-store test: Break out IFD expression into a separate file 2023-12-23 17:15:09 -05:00
import-derivation.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
import-derivation.sh housekeeping: shellcheck for tests/functional/import-derivation.sh 2024-06-12 17:41:16 -04:00
impure-derivations.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
impure-derivations.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
impure-env.nix Allow CLI to pass environment variables to FOD builder (#8830) 2023-10-11 11:58:42 +00:00
impure-env.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
impure-eval.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
install-darwin.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
lang-test-infra.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
lang.sh builtins.warn: Require string argument 2024-06-03 16:24:21 +02:00
legacy-ssh-store.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
linux-sandbox-cert-test.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
linux-sandbox.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
local.mk Merge pull request #10564 from edolstra/remove-forceErrors 2024-06-03 15:30:01 +02:00
logging.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
misc.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
multiple-outputs.nix Fix empty outputsToInstall for InstallableAttrPath 2024-06-02 14:26:18 +03:00
multiple-outputs.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
nar-access.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nar-access.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nested-sandboxing.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-build-examples.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
nix-build.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-channel.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-collect-garbage-d.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-copy-ssh-common.sh Test nix copy --substitute-on-destination 2023-12-13 15:22:19 -05:00
nix-copy-ssh-ng.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-copy-ssh.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-daemon-untrusting.sh Arbitrarily bring back some nix-daemon calls 2024-01-13 11:27:04 -08:00
nix-profile.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix-shell.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
nix_path.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
optimise-store.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
output-normalization.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
parallel.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
parallel.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pass-as-file.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
path-from-hash-part.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
path-info.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
path.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
placeholders.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
plugins.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
post-hook.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
pure-eval.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
pure-eval.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
push-to-store-old.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
push-to-store.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
read-only-store.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
readfile-context.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
readfile-context.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
recursive.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
recursive.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
referrers.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
remote-store.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
repair.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
repl.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
restricted.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
restricted.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
search.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
search.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
secure-drv-outputs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
secure-drv-outputs.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
selfref-gc.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
shell-hello.nix nix shell: Test that store paths cannot link outside of the store 2024-04-11 11:06:35 +02:00
shell.nix Do not rely on $stdenv/setup to set output variables 2024-04-10 19:50:19 +03:00
shell.sh nix env shell: Move from nix shell, add shorthand alias 2024-05-30 19:41:58 +02:00
shell.shebang.nix tests: test nix-shell shebang quoting 2023-10-23 17:32:50 +02:00
shell.shebang.rb Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
shell.shebang.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
signing.sh ValidPathInfo JSON format should use null not omit field 2024-06-03 08:21:22 -04:00
simple-failing.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
simple.nix add regression test for nix edit 2024-05-31 12:58:47 +02:00
simple.sh Try to fix quotes that don't go to end with sed 2024-06-12 17:41:16 -04:00
ssh-relay.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
store-info.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
structured-attrs-shell.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
structured-attrs.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
substitute-with-invalid-ca.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
suggestions.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
supplementary-groups.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
symlink-derivation.nix Fix the access of symlinks to host files in the sandbox 2024-04-12 15:57:53 +02:00
tarball.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
test-infra.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
test-libstoreconsumer.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
timeout.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
timeout.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
toString-path.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
undefined-variable.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs-migration.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
user-envs-test-case.sh tests: simplify initialisation and wiring 2024-05-13 15:19:49 +02:00
user-envs.builder.sh Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.nix Put functional tests in tests/functional 2023-10-06 09:05:56 -04:00
user-envs.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
why-depends.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00
zstd.sh Ensure all functional scripts are (a) executable (b) have shebang 2024-05-28 12:46:24 -04:00