summary refs log tree commit diff
path: root/nixos/tests/docker-tools.nix
diff options
context:
space:
mode:
authortalyz <kim.lindberger@gmail.com>2021-06-04 14:48:00 +0200
committertalyz <kim.lindberger@gmail.com>2021-06-05 18:44:42 +0200
commitb7749c76715ba96727f7a12bc2514ddfa6847813 (patch)
treea85f4684c53bd0ab4a35787fce95bf64edcce528 /nixos/tests/docker-tools.nix
parentf36a65f6e2e9f3641f12c7d6e48a5ec4b5c5394b (diff)
downloadnixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar.gz
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar.bz2
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar.lz
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar.xz
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.tar.zst
nixpkgs-b7749c76715ba96727f7a12bc2514ddfa6847813.zip
nixos/test-driver: Run commands with error handling
Bash's standard behavior of not propagating non-zero exit codes
through a pipeline is unexpected and almost universally
unwanted. Default to setting `pipefail` for the command being run;
it can still be turned off by prefixing the pipeline with
`set +o pipefail` if needed.

Also, set `errexit` and `nonunset` options to make the first command
of consecutive commands separated by `;` fail, and disallow
dereferencing unset variables respectively.
Diffstat (limited to 'nixos/tests/docker-tools.nix')
-rw-r--r--nixos/tests/docker-tools.nix6
1 files changed, 3 insertions, 3 deletions
diff --git a/nixos/tests/docker-tools.nix b/nixos/tests/docker-tools.nix
index 831ef2fb77a..4c3c26980aa 100644
--- a/nixos/tests/docker-tools.nix
+++ b/nixos/tests/docker-tools.nix
@@ -23,15 +23,15 @@ import ./make-test-python.nix ({ pkgs, ... }: {
     with subtest("includeStorePath"):
         with subtest("assumption"):
             docker.succeed("${examples.helloOnRoot} | docker load")
-            docker.succeed("set -euo pipefail; docker run --rm hello | grep -i hello")
+            docker.succeed("docker run --rm hello | grep -i hello")
             docker.succeed("docker image rm hello:latest")
         with subtest("includeStorePath = false; breaks example"):
             docker.succeed("${examples.helloOnRootNoStore} | docker load")
-            docker.fail("set -euo pipefail; docker run --rm hello | grep -i hello")
+            docker.fail("docker run --rm hello | grep -i hello")
             docker.succeed("docker image rm hello:latest")
         with subtest("includeStorePath = false; works with mounted store"):
             docker.succeed("${examples.helloOnRootNoStore} | docker load")
-            docker.succeed("set -euo pipefail; docker run --rm --volume ${builtins.storeDir}:${builtins.storeDir}:ro hello | grep -i hello")
+            docker.succeed("docker run --rm --volume ${builtins.storeDir}:${builtins.storeDir}:ro hello | grep -i hello")
             docker.succeed("docker image rm hello:latest")
 
     with subtest("Ensure Docker images use a stable date by default"):