1{
2 system ? builtins.currentSystem,
3 pkgs ? import ../../.. { inherit system; },
4 lib ? pkgs.lib,
5}:
6let
7 allK3s = lib.filterAttrs (n: _: lib.strings.hasPrefix "k3s_" n) pkgs;
8in
9{
10 # Testing K3s with Etcd backend
11 etcd = lib.mapAttrs (
12 _: k3s:
13 import ./etcd.nix {
14 inherit system pkgs k3s;
15 inherit (pkgs) etcd;
16 }
17 ) allK3s;
18 # Run a single node k3s cluster and verify a pod can run
19 single-node = lib.mapAttrs (_: k3s: import ./single-node.nix { inherit system pkgs k3s; }) allK3s;
20 # Run a multi-node k3s cluster and verify pod networking works across nodes
21 multi-node = lib.mapAttrs (_: k3s: import ./multi-node.nix { inherit system pkgs k3s; }) allK3s;
22}