2023-01-18 15:40:42 +01:00
|
|
|
import ./make-test-python.nix {
|
|
|
|
name = "zram-generator";
|
|
|
|
|
2023-03-20 15:50:11 +01:00
|
|
|
nodes = {
|
|
|
|
single = { ... }: {
|
|
|
|
virtualisation = {
|
|
|
|
emptyDiskImages = [ 512 ];
|
|
|
|
};
|
|
|
|
zramSwap = {
|
|
|
|
enable = true;
|
|
|
|
priority = 10;
|
|
|
|
algorithm = "lz4";
|
|
|
|
swapDevices = 1;
|
|
|
|
memoryPercent = 30;
|
|
|
|
memoryMax = 10 * 1024 * 1024;
|
|
|
|
writebackDevice = "/dev/vdb";
|
|
|
|
};
|
|
|
|
};
|
|
|
|
machine = { ... }: {
|
|
|
|
zramSwap = {
|
|
|
|
enable = true;
|
|
|
|
priority = 10;
|
|
|
|
algorithm = "lz4";
|
|
|
|
swapDevices = 2;
|
|
|
|
memoryPercent = 30;
|
|
|
|
memoryMax = 10 * 1024 * 1024;
|
|
|
|
};
|
2023-02-02 04:28:12 +01:00
|
|
|
};
|
2023-01-18 15:40:42 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
testScript = ''
|
2023-03-20 15:50:11 +01:00
|
|
|
single.wait_for_unit("systemd-zram-setup@zram0.service")
|
|
|
|
|
2023-01-18 15:40:42 +01:00
|
|
|
machine.wait_for_unit("systemd-zram-setup@zram0.service")
|
2023-02-02 04:28:12 +01:00
|
|
|
machine.wait_for_unit("systemd-zram-setup@zram1.service")
|
|
|
|
zram = machine.succeed("zramctl --noheadings --raw")
|
|
|
|
swap = machine.succeed("swapon --show --noheadings")
|
|
|
|
for i in range(2):
|
|
|
|
assert f"/dev/zram{i} lz4 10M" in zram
|
|
|
|
assert f"/dev/zram{i} partition 10M" in swap
|
2023-01-18 15:40:42 +01:00
|
|
|
'';
|
|
|
|
}
|