nixosTests.image-contents: init
This commit is contained in:
parent
6f21ae7a62
commit
8e52193721
@ -271,6 +271,7 @@ in
|
||||
openssh = handleTest ./openssh.nix {};
|
||||
openstack-image-metadata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).metadata or {};
|
||||
openstack-image-userdata = (handleTestOn ["x86_64-linux"] ./openstack-image.nix {}).userdata or {};
|
||||
image-contents = handleTest ./image-contents.nix {};
|
||||
orangefs = handleTest ./orangefs.nix {};
|
||||
os-prober = handleTestOn ["x86_64-linux"] ./os-prober.nix {};
|
||||
osrm-backend = handleTest ./osrm-backend.nix {};
|
||||
|
51
nixos/tests/image-contents.nix
Normal file
51
nixos/tests/image-contents.nix
Normal file
@ -0,0 +1,51 @@
|
||||
# Tests the contents attribute of nixos/lib/make-disk-image.nix
|
||||
# including its user, group, and mode attributes.
|
||||
{ system ? builtins.currentSystem,
|
||||
config ? {},
|
||||
pkgs ? import ../.. { inherit system config; }
|
||||
}:
|
||||
|
||||
with import ../lib/testing-python.nix { inherit system pkgs; };
|
||||
with pkgs.lib;
|
||||
|
||||
with import common/ec2.nix { inherit makeTest pkgs; };
|
||||
|
||||
let
|
||||
config = (import ../lib/eval-config.nix {
|
||||
inherit system;
|
||||
modules = [
|
||||
../modules/testing/test-instrumentation.nix
|
||||
../modules/profiles/qemu-guest.nix
|
||||
{
|
||||
fileSystems."/".device = "/dev/disk/by-label/nixos";
|
||||
boot.loader.grub.device = "/dev/vda";
|
||||
boot.loader.timeout = 0;
|
||||
}
|
||||
];
|
||||
}).config;
|
||||
image = (import ../lib/make-disk-image.nix {
|
||||
inherit pkgs config;
|
||||
lib = pkgs.lib;
|
||||
format = "qcow2";
|
||||
contents = [{
|
||||
source = pkgs.writeText "testFile" "contents";
|
||||
target = "/testFile";
|
||||
user = "1234";
|
||||
group = "5678";
|
||||
mode = "755";
|
||||
}];
|
||||
}) + "/nixos.qcow2";
|
||||
|
||||
in makeEc2Test {
|
||||
name = "image-contents";
|
||||
inherit image;
|
||||
userData = null;
|
||||
script = ''
|
||||
machine.start()
|
||||
assert "content" in machine.succeed("cat /testFile")
|
||||
fileDetails = machine.succeed("ls -l /testFile")
|
||||
assert "1234" in fileDetails
|
||||
assert "5678" in fileDetails
|
||||
assert "rwxr-xr-x" in fileDetails
|
||||
'';
|
||||
}
|
Loading…
Reference in New Issue
Block a user