From 09d6e98b9791e287876936173c7d345952e03ab9 Mon Sep 17 00:00:00 2001 From: Philippe Laflamme Date: Sun, 2 Aug 2026 16:27:24 -0400 Subject: [PATCH] test: run tests over all supported versions This changes checks so they run over all supported versions, not just the "default". --- flake.nix | 32 ++++++++++++++++++++++++++------ 1 file changed, 26 insertions(+), 6 deletions(-) diff --git a/flake.nix b/flake.nix index 79a3f28..d183c2a 100644 --- a/flake.nix +++ b/flake.nix @@ -45,16 +45,30 @@ formatter = (lib.genAttrs allSystems) (system: nixpkgs.legacyPackages.${system}.nixfmt-tree); - checks = (lib.genAttrs allSystems) ( + checks = (lib.genAttrs k0sSystems) ( system: let pkgs = nixpkgs.legacyPackages.${system}; - forAllTests = lib.genAttrs ( - map (name: lib.strings.removeSuffix ".nix" name) (builtins.attrNames (builtins.readDir ./tests)) + versions = builtins.filter (name: name != "k0s") (builtins.attrNames self.packages.${system}); + tests = map (name: lib.strings.removeSuffix ".nix" name) ( + builtins.attrNames (builtins.readDir ./tests) ); + forAllVersionsAndTests = + check: + let + nestedPairs = map ( + version: + map (test: { + name = "${version}_${test}"; + value = check version test; + }) tests + ) versions; + flatPairs = builtins.concatLists nestedPairs; + in + builtins.listToAttrs flatPairs; in - forAllTests ( - test: + forAllVersionsAndTests ( + version: test: pkgs.testers.runNixOSTest { imports = [ ./tests/${test}.nix ]; node = { @@ -62,7 +76,13 @@ }; defaults = { imports = [ self.nixosModules.default ]; - nixpkgs.overlays = [ self.overlays.default ]; + nixpkgs.overlays = [ + self.overlays.default + (final: prev: { + inherit final; + k0s = prev."${version}"; + }) + ]; }; } )