dockerTools: add nixDB tests

This commit is contained in:
Yorick van Pelt 2024-05-06 17:48:49 +02:00
parent 4d51990bc5
commit 8891e98f24
No known key found for this signature in database
GPG Key ID: D8D3CC6D951384DE
2 changed files with 24 additions and 0 deletions

View File

@ -559,6 +559,12 @@ in {
docker.succeed("docker run --rm image-with-certs:latest test -r /etc/pki/tls/certs/ca-bundle.crt")
docker.succeed("docker image rm image-with-certs:latest")
with subtest("buildImageWithNixDB: Has a nix database"):
docker.succeed(
"docker load --input='${examples.nix}'",
"docker run --rm ${examples.nix.imageName} nix-store -q --references /bin/bash"
)
with subtest("buildNixShellImage: Can build a basic derivation"):
docker.succeed(
"${examples.nix-shell-basic} | docker load",
@ -624,5 +630,11 @@ in {
"${nonRootTestImage} | docker load",
"docker run --rm ${chownTestImage.imageName} | diff /dev/stdin <(echo 12345:12345)"
)
with subtest("streamLayeredImage: with nix db"):
docker.succeed(
"${examples.nix-layered} | docker load",
"docker run --rm ${examples.nix-layered.imageName} nix-store -q --references /bin/bash"
)
'';
})

View File

@ -881,4 +881,16 @@ rec {
'';
};
nix-layered = pkgs.dockerTools.streamLayeredImage {
name = "nix-layered";
tag = "latest";
contents = [ pkgs.nix pkgs.bash ];
includeNixDB = true;
config = {
Env = [
"NIX_PAGER=cat"
];
};
};
}