diff options
author | Robin Gloster <mail@glob.in> | 2019-11-24 15:23:49 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-11-24 15:23:49 +0100 |
commit | 4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf (patch) | |
tree | d512df8ec11133778a32d79a3aa3ca19e5d258ba /nixos | |
parent | 17e20a03ff34819db4aef0b97f374d359975f9a0 (diff) | |
parent | 3b218e85707e85fc435272d908239bf568f78b0b (diff) | |
download | nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar.gz nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar.bz2 nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar.lz nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar.xz nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.tar.zst nixlib-4e007fb1f67aeff64fcd5d70eb21b3d6b8a510cf.zip |
Merge pull request #74033 from Ma27/port-docker-registry-test
nixos/docker-registry: port test to python test-driver
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/tests/docker-registry.nix | 62 |
1 files changed, 30 insertions, 32 deletions
diff --git a/nixos/tests/docker-registry.nix b/nixos/tests/docker-registry.nix index 8936421072a9..2928fd8141a4 100644 --- a/nixos/tests/docker-registry.nix +++ b/nixos/tests/docker-registry.nix @@ -1,6 +1,6 @@ # This test runs docker-registry and check if it works -import ./make-test.nix ({ pkgs, ...} : { +import ./make-test-python.nix ({ pkgs, ...} : { name = "docker-registry"; meta = with pkgs.stdenv.lib.maintainers; { maintainers = [ globin ma27 ironpinguin ]; @@ -28,36 +28,34 @@ import ./make-test.nix ({ pkgs, ...} : { }; testScript = '' - $client1->start(); - $client1->waitForUnit("docker.service"); - $client1->succeed("tar cv --files-from /dev/null | docker import - scratch"); - $client1->succeed("docker tag scratch registry:8080/scratch"); - - $registry->start(); - $registry->waitForUnit("docker-registry.service"); - $registry->waitForOpenPort("8080"); - $client1->succeed("docker push registry:8080/scratch"); - - $client2->start(); - $client2->waitForUnit("docker.service"); - $client2->succeed("docker pull registry:8080/scratch"); - $client2->succeed("docker images | grep scratch"); - - $client2->succeed( - 'curl -fsS -X DELETE registry:8080/v2/scratch/manifests/$(curl -fsS -I -H"Accept: application/vnd.docker.distribution.manifest.v2+json" registry:8080/v2/scratch/manifests/latest | grep Docker-Content-Digest | sed -e \'s/Docker-Content-Digest: //\' | tr -d \'\r\')' - ); - - $registry->systemctl("start docker-registry-garbage-collect.service"); - $registry->waitUntilFails("systemctl status docker-registry-garbage-collect.service"); - $registry->waitForUnit("docker-registry.service"); - - $registry->fail( - 'ls -l /var/lib/docker-registry/docker/registry/v2/blobs/sha256/*/*/data' - ); - - $client1->succeed("docker push registry:8080/scratch"); - $registry->succeed( - 'ls -l /var/lib/docker-registry/docker/registry/v2/blobs/sha256/*/*/data' - ); + client1.start() + client1.wait_for_unit("docker.service") + client1.succeed("tar cv --files-from /dev/null | docker import - scratch") + client1.succeed("docker tag scratch registry:8080/scratch") + + registry.start() + registry.wait_for_unit("docker-registry.service") + registry.wait_for_open_port("8080") + client1.succeed("docker push registry:8080/scratch") + + client2.start() + client2.wait_for_unit("docker.service") + client2.succeed("docker pull registry:8080/scratch") + client2.succeed("docker images | grep scratch") + + client2.succeed( + "curl -fsS -X DELETE registry:8080/v2/scratch/manifests/$(curl -fsS -I -H\"Accept: application/vnd.docker.distribution.manifest.v2+json\" registry:8080/v2/scratch/manifests/latest | grep Docker-Content-Digest | sed -e 's/Docker-Content-Digest: //' | tr -d '\\r')" + ) + + registry.systemctl("start docker-registry-garbage-collect.service") + registry.wait_until_fails("systemctl status docker-registry-garbage-collect.service") + registry.wait_for_unit("docker-registry.service") + + registry.fail("ls -l /var/lib/docker-registry/docker/registry/v2/blobs/sha256/*/*/data") + + client1.succeed("docker push registry:8080/scratch") + registry.succeed( + "ls -l /var/lib/docker-registry/docker/registry/v2/blobs/sha256/*/*/data" + ) ''; }) |