diff options
author | Maximilian Bosch <maximilian@mbosch.me> | 2024-02-02 15:24:05 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-02 15:24:05 +0100 |
commit | 11ef076aabc57b14586ad6b99d8f762d843ffce8 (patch) | |
tree | 032f79619b56c55c1178041780434e3a5ae533f2 /nixos | |
parent | 7367ffc89370d0f35e2a523c4eb7084c4479dfc9 (diff) | |
parent | 37ac24e2c7e991a8ff5759bc5ae0f6f1d218a0cb (diff) | |
download | nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar.gz nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar.bz2 nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar.lz nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar.xz nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.tar.zst nixlib-11ef076aabc57b14586ad6b99d8f762d843ffce8.zip |
Merge pull request #285035 from Ma27/kernel-rust-matrix
nixos/tests/kernel-rust: test against 6.7 and testing (6.8rc1)
Diffstat (limited to 'nixos')
-rw-r--r-- | nixos/tests/all-tests.nix | 2 | ||||
-rw-r--r-- | nixos/tests/kernel-rust.nix | 65 |
2 files changed, 40 insertions, 27 deletions
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix index fbb4573d8135..f52e37d782bd 100644 --- a/nixos/tests/all-tests.nix +++ b/nixos/tests/all-tests.nix @@ -452,7 +452,7 @@ in { kerberos = handleTest ./kerberos/default.nix {}; kernel-generic = handleTest ./kernel-generic.nix {}; kernel-latest-ath-user-regd = handleTest ./kernel-latest-ath-user-regd.nix {}; - kernel-rust = runTestOn ["x86_64-linux"] ./kernel-rust.nix; + kernel-rust = handleTestOn ["x86_64-linux"] ./kernel-rust.nix {}; keter = handleTest ./keter.nix {}; kexec = handleTest ./kexec.nix {}; keycloak = discoverTests (import ./keycloak.nix); diff --git a/nixos/tests/kernel-rust.nix b/nixos/tests/kernel-rust.nix index 80eb38693677..1f269173ec2e 100644 --- a/nixos/tests/kernel-rust.nix +++ b/nixos/tests/kernel-rust.nix @@ -1,30 +1,43 @@ -{ pkgs, ... }: { - name = "kernel-rust"; - meta = with pkgs.lib.maintainers; { - maintainers = [ blitz ]; - }; +{ system ? builtins.currentSystem +, config ? { } +, pkgs ? import ../.. { inherit system config; } +}: - nodes.machine = { config, pkgs, ... }: - { - boot.kernelPackages = pkgs.linuxPackages_testing; +let + inherit (pkgs.lib) const filterAttrs mapAttrs; - boot.extraModulePackages = [ - config.boot.kernelPackages.rust-out-of-tree-module - ]; - - boot.kernelPatches = [ - { - name = "Rust Support"; - patch = null; - features = { - rust = true; - }; - } - ]; + kernelRustTest = kernelPackages: import ./make-test-python.nix ({ lib, ... }: { + name = "kernel-rust"; + meta.maintainers = with lib.maintainers; [ blitz ma27 ]; + nodes.machine = { config, ... }: { + boot = { + inherit kernelPackages; + extraModulePackages = [ config.boot.kernelPackages.rust-out-of-tree-module ]; + kernelPatches = [ + { + name = "Rust Support"; + patch = null; + features = { + rust = true; + }; + } + ]; + }; }; + testScript = '' + machine.wait_for_unit("default.target") + machine.succeed("modprobe rust_out_of_tree") + ''; + }); - testScript = '' - machine.wait_for_unit("default.target") - machine.succeed("modprobe rust_out_of_tree") - ''; -} + kernels = { + inherit (pkgs.linuxKernel.packages) linux_testing; + } + // filterAttrs + (const (x: let + inherit (builtins.tryEval ( + x.rust-out-of-tree-module or null != null + )) success value; + in success && value)) + pkgs.linuxKernel.vanillaPackages; +in mapAttrs (const kernelRustTest) kernels |