lol

Merge pull request #35048 from nlewo/test.dockerTools

nixos.test.dockerTools: add more tests

authored by

Jörg Thalheim and committed by
GitHub
431c004f 1cfd942f

+19 -16
+19 -16
nixos/tests/docker-tools.nix
··· 9 9 nodes = { 10 10 docker = 11 11 { config, pkgs, ... }: { 12 - virtualisation.docker.enable = true; 12 + virtualisation = { 13 + diskSize = 1024; 14 + docker.enable = true; 15 + }; 13 16 }; 14 17 }; 15 18 16 19 testScript = 17 - let 18 - dockerImage = pkgs.dockerTools.buildImage { 19 - name = "hello-docker"; 20 - contents = [ pkgs.hello ]; 21 - tag = "sometag"; 20 + '' 21 + $docker->waitForUnit("sockets.target"); 22 + 23 + $docker->succeed("docker load --input='${pkgs.dockerTools.examples.bash}'"); 24 + $docker->succeed("docker run ${pkgs.dockerTools.examples.bash.imageName} /bin/bash --version"); 22 25 23 - # TODO: create another test checking whether runAsRoot works as intended. 26 + $docker->succeed("docker load --input='${pkgs.dockerTools.examples.nix}'"); 27 + $docker->succeed("docker run ${pkgs.dockerTools.examples.nix.imageName} /bin/nix-store -qR ${pkgs.nix}"); 24 28 25 - config = { 26 - Cmd = [ "hello" ]; 27 - }; 28 - }; 29 + # To test the pullImage tool 30 + $docker->succeed("docker load --input='${pkgs.dockerTools.examples.nixFromDockerHub}'"); 31 + $docker->succeed("docker run nixos/nix:1.11 nix-store --version"); 29 32 30 - in '' 31 - $docker->waitForUnit("sockets.target"); 32 - $docker->succeed("docker load --input='${dockerImage}'"); 33 - $docker->succeed("docker run hello-docker:sometag"); 33 + # To test runAsRoot and entry point 34 + $docker->succeed("docker load --input='${pkgs.dockerTools.examples.nginx}'"); 35 + $docker->succeed("docker run --name nginx -d -p 8000:80 ${pkgs.dockerTools.examples.nginx.imageName}"); 36 + $docker->waitUntilSucceeds('curl http://localhost:8000/'); 37 + $docker->succeed("docker rm --force nginx"); 34 38 ''; 35 - 36 39 })