diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index 2392cc5878b2..fd200903c79d 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -370,7 +370,7 @@ in dnsdist = import ./dnsdist.nix { inherit pkgs runTest; }; doas = runTest ./doas.nix; docker = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker.nix; - docker-rootless = handleTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker-rootless.nix { }; + docker-rootless = runTestOn [ "aarch64-linux" "x86_64-linux" ] ./docker-rootless.nix; docker-registry = handleTest ./docker-registry.nix { }; docker-tools = handleTestOn [ "x86_64-linux" ] ./docker-tools.nix { }; docker-tools-nix-shell = runTest ./docker-tools-nix-shell.nix; diff --git a/nixos/tests/docker-rootless.nix b/nixos/tests/docker-rootless.nix index 2a97ccb35f91..a2e6a52ca13c 100644 --- a/nixos/tests/docker-rootless.nix +++ b/nixos/tests/docker-rootless.nix @@ -1,51 +1,48 @@ # This test runs docker and checks if simple container starts +{ lib, pkgs, ... }: +{ + name = "docker-rootless"; + meta = with pkgs.lib.maintainers; { + maintainers = [ abbradar ]; + }; -import ./make-test-python.nix ( - { lib, pkgs, ... }: - { - name = "docker-rootless"; - meta = with pkgs.lib.maintainers; { - maintainers = [ abbradar ]; - }; + nodes = { + machine = + { pkgs, ... }: + { + virtualisation.docker.rootless.enable = true; - nodes = { - machine = - { pkgs, ... }: - { - virtualisation.docker.rootless.enable = true; - - users.users.alice = { - uid = 1000; - isNormalUser = true; - }; + users.users.alice = { + uid = 1000; + isNormalUser = true; }; - }; + }; + }; - testScript = - { nodes, ... }: - let - user = nodes.machine.config.users.users.alice; - sudo = lib.concatStringsSep " " [ - "XDG_RUNTIME_DIR=/run/user/${toString user.uid}" - "DOCKER_HOST=unix:///run/user/${toString user.uid}/docker.sock" - "sudo" - "--preserve-env=XDG_RUNTIME_DIR,DOCKER_HOST" - "-u" - "alice" - ]; - in - '' - machine.wait_for_unit("multi-user.target") + testScript = + { nodes, ... }: + let + user = nodes.machine.config.users.users.alice; + sudo = lib.concatStringsSep " " [ + "XDG_RUNTIME_DIR=/run/user/${toString user.uid}" + "DOCKER_HOST=unix:///run/user/${toString user.uid}/docker.sock" + "sudo" + "--preserve-env=XDG_RUNTIME_DIR,DOCKER_HOST" + "-u" + "alice" + ]; + in + '' + machine.wait_for_unit("multi-user.target") - machine.succeed("loginctl enable-linger alice") - machine.wait_until_succeeds("${sudo} systemctl --user is-active docker.service") + machine.succeed("loginctl enable-linger alice") + machine.wait_until_succeeds("${sudo} systemctl --user is-active docker.service") - machine.succeed("tar cv --files-from /dev/null | ${sudo} docker import - scratchimg") - machine.succeed( - "${sudo} docker run -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10" - ) - machine.succeed("${sudo} docker ps | grep sleeping") - machine.succeed("${sudo} docker stop sleeping") - ''; - } -) + machine.succeed("tar cv --files-from /dev/null | ${sudo} docker import - scratchimg") + machine.succeed( + "${sudo} docker run -d --name=sleeping -v /nix/store:/nix/store -v /run/current-system/sw/bin:/bin scratchimg /bin/sleep 10" + ) + machine.succeed("${sudo} docker ps | grep sleeping") + machine.succeed("${sudo} docker stop sleeping") + ''; +}