treewide: add bcachefsLinuxTesting and bcachefsLinuxTesting tests

nixos/tests/installer: add bcachefsLinuxTesting and bcachefsLinuxTesting tests

bcachefs-tools: add bcachefsLinuxTesting and bcachefsLinuxTesting tests

Madoura c2450c45 890cf0a7

Changed files
+69 -1
nixos
pkgs
tools
filesystems
bcachefs-tools
+62
nixos/tests/installer.nix
···
'';
};
+
bcachefsLinuxTesting = makeInstallerTest "bcachefs-linux-testing" {
+
extraInstallerConfig = {
+
imports = [ no-zfs-module ];
+
+
boot = {
+
supportedFilesystems = [ "bcachefs" ];
+
kernelPackages = pkgs.linuxPackages_testing;
+
};
+
};
+
+
extraConfig = ''
+
boot.kernelPackages = pkgs.linuxPackages_testing;
+
'';
+
+
createPartitions = ''
+
machine.succeed(
+
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
+
+ " mkpart primary ext2 1M 100MB" # /boot
+
+ " mkpart primary linux-swap 100M 1024M" # swap
+
+ " mkpart primary 1024M -1s", # /
+
"udevadm settle",
+
"mkswap /dev/vda2 -L swap",
+
"swapon -L swap",
+
"mkfs.bcachefs -L root /dev/vda3",
+
"mount -t bcachefs /dev/vda3 /mnt",
+
"mkfs.ext3 -L boot /dev/vda1",
+
"mkdir -p /mnt/boot",
+
"mount /dev/vda1 /mnt/boot",
+
)
+
'';
+
};
+
+
bcachefsUpgradeToLinuxTesting = makeInstallerTest "bcachefs-upgrade-to-linux-testing" {
+
extraInstallerConfig = {
+
imports = [ no-zfs-module ];
+
boot.supportedFilesystems = [ "bcachefs" ];
+
# We don't have network access in the VM, we need this for `nixos-install`
+
system.extraDependencies = [ pkgs.linux_testing ];
+
};
+
+
extraConfig = ''
+
boot.kernelPackages = pkgs.linuxPackages_testing;
+
'';
+
+
createPartitions = ''
+
machine.succeed(
+
"flock /dev/vda parted --script /dev/vda -- mklabel msdos"
+
+ " mkpart primary ext2 1M 100MB" # /boot
+
+ " mkpart primary linux-swap 100M 1024M" # swap
+
+ " mkpart primary 1024M -1s", # /
+
"udevadm settle",
+
"mkswap /dev/vda2 -L swap",
+
"swapon -L swap",
+
"mkfs.bcachefs -L root /dev/vda3",
+
"mount -t bcachefs /dev/vda3 /mnt",
+
"mkfs.ext3 -L boot /dev/vda1",
+
"mkdir -p /mnt/boot",
+
"mount /dev/vda1 /mnt/boot",
+
)
+
'';
+
};
+
# Test using labels to identify volumes in grub
simpleLabels = makeInstallerTest "simpleLabels" {
createPartitions = ''
+7 -1
pkgs/tools/filesystems/bcachefs-tools/default.nix
···
passthru = {
tests = {
smoke-test = nixosTests.bcachefs;
-
inherit (nixosTests.installer) bcachefsSimple bcachefsEncrypted bcachefsMulti;
+
+
inherit (nixosTests.installer)
+
bcachefsSimple
+
bcachefsEncrypted
+
bcachefsMulti
+
bcachefsLinuxTesting
+
bcachefsUpgradeToLinuxTesting;
};
updateScript = writeScript "update-bcachefs-tools-and-cargo-lock.sh" ''