1# A test that imports k3s airgapped images and verifies that all expected images are present
2import ../make-test-python.nix (
3 { lib, k3s, ... }:
4 {
5 name = "${k3s.name}-airgap-images";
6 meta.maintainers = lib.teams.k3s.members;
7
8 nodes.machine = _: {
9 # k3s uses enough resources the default vm fails.
10 virtualisation.memorySize = 1536;
11 virtualisation.diskSize = 4096;
12
13 services.k3s = {
14 enable = true;
15 role = "server";
16 package = k3s;
17 # Slightly reduce resource usage
18 extraFlags = [
19 "--disable coredns"
20 "--disable local-storage"
21 "--disable metrics-server"
22 "--disable servicelb"
23 "--disable traefik"
24 ];
25 images = [ k3s.airgap-images ];
26 };
27 };
28
29 testScript = ''
30 machine.wait_for_unit("k3s")
31 machine.wait_until_succeeds("journalctl -r --no-pager -u k3s | grep \"Imported images from /var/lib/rancher/k3s/agent/images/\"")
32 '';
33 }
34)