also test zfs filesystem options

This commit is contained in:
Jörg Thalheim 2022-08-26 09:07:24 +02:00
parent 05a90d4227
commit 57b7c5506a
2 changed files with 22 additions and 0 deletions

View file

@ -12,11 +12,16 @@
zroot = {
type = "zpool";
mode = "mirror";
rootFsOptions = {
compression = "lz4";
"com.sun:auto-snapshot" = "false";
};
datasets = [
{
type = "zfs_filesystem";
name = "zfs_fs";
mountpoint = "/zfs_fs";
options."com.sun:auto-snapshot" = "true";
}
{
type = "zfs_filesystem";

View file

@ -5,6 +5,23 @@ makeDiskoTest {
disko-config = import ../example/zfs.nix;
extraTestScript = ''
machine.succeed("test -b /dev/zvol/zroot/zfs_testvolume");
def assert_property(ds, property, expected_value):
out = machine.succeed(f"zfs get -H {property} {ds} -o value").rstrip()
assert (
out == expected_value
), f"Expected {property}={expected_value} on {ds}, got: {out}"
assert_property("zroot", "compression", "lz4")
assert_property("zroot/zfs_fs", "compression", "lz4")
assert_property("zroot", "com.sun:auto-snapshot", "false")
assert_property("zroot/zfs_fs", "com.sun:auto-snapshot", "true")
assert_property("zroot/zfs_testvolume", "volsize", "10M")
# FIXME: we cannot mount rootfs yet
#machine.succeed("mountpoint /mnt");
machine.succeed("mountpoint /mnt/zfs_fs");
machine.succeed("mountpoint /mnt/zfs_legacy_fs");
machine.succeed("mountpoint /mnt/ext4onzfs");
'';
}