{"tests":[{"name":"cl.ignition.v1.noop","result":"PASS","duration":124613009992,"output":""},{"name":"cl.ignition.v2.noop","result":"PASS","duration":124746537585,"output":""},{"name":"cl.metadata.azure","result":"PASS","duration":125081400149,"output":""},{"name":"azure.nvme-friendly-naming","result":"SKIP","duration":126897822167,"output":"        cluster.go:125: ls: cannot access '/dev/nvme0n1': No such file or directory\n        nvme.go:47: no NVMe disk found on this instance\n"},{"name":"cl.ignition.v2.btrfsroot","result":"PASS","duration":126960110329,"output":""},{"name":"cl.ignition.v2.users","result":"PASS","duration":130336097739,"output":""},{"name":"cl.ignition.v1.users","result":"PASS","duration":130549194802,"output":""},{"name":"cl.verity/verify","result":"PASS","duration":12263133977,"output":"        cluster.go:125: Success\n"},{"name":"bpf.ig/ig","result":"PASS","duration":139489917442,"output":"        cluster.go:125: + sudo ig run trace_exec:v0.50.0 --help\n        cluster.go:125: time=\"2026-10-21T07:43:39Z\" level=warning msg=\"Runtime enricher (docker): couldn't get current containers: listing containers with options {Size:false All:true Latest:false Since: Before: Limit:0 Filters:{fields:map[]}}: Get \\\"http://%2Frun%2Fdocker.sock/v1.51/containers/json?all=1\\\": context deadline exceeded\"\n        cluster.go:125: + trap 'kill %%' ERR\n        cluster.go:125: + sudo ig run trace_exec:v0.50.0 --host --filter proc.comm=docker,args~ps --output json --verbose\n        cluster.go:125: + timeout 30 grep -F -m1 running...\n        cluster.go:125: + docker info\n        cluster.go:125: + docker ps\n        cluster.go:125: + docker images\n        cluster.go:125: + kill %%\n        cluster.go:125: + wait\n        cluster.go:125: + jq -s -e '.[] | select(.args == \"/usr/bin/docker\\u00a0ps\")' ig.json\n        cluster.go:125: + jq -s -e 'isempty(.[] | select(.args == \"/usr/bin/docker\\u00a0info\"))' ig.json\n        cluster.go:125: + jq -s -e 'isempty(.[] | select(.args == \"/usr/bin/docker\\u00a0images\"))' ig.json\n        cluster.go:125: + sudo ig run trace_dns:v0.50.0 --help\n        cluster.go:125: + trap 'kill %%' ERR\n        cluster.go:125: + timeout 30 grep -F -m1 running...\n        cluster.go:125: + sudo ig run trace_dns:v0.50.0 --host --filter name=flatcar.org. --output json --verbose\n        cluster.go:125: + dig kinvolk.io\n        cluster.go:125: + dig flatcar.org\n        cluster.go:125: + dig stable.release.flatcar-linux.net\n        cluster.go:125: + kill %%\n        cluster.go:125: + wait\n        cluster.go:125: + jq -s -e '.[] | select(.name == \"flatcar.org.\")' ig.json\n        cluster.go:125: + jq -s -e 'isempty(.[] | select(.name == \"kinvolk.io.\"))' ig.json\n        cluster.go:125: + jq -s -e 'isempty(.[] | select(.name == \"stable.release.flatcar-linux.net.\"))' ig.json\n"},{"name":"docker.lib-coreos-dockerd-compat/docker-info","result":"PASS","duration":19234688569,"output":""},{"name":"bpf.ig","result":"PASS","duration":142291921713,"output":"    --- PASS: bpf.ig/ig (139.49s)\n            cluster.go:125: + sudo ig run trace_exec:v0.50.0 --help\n            cluster.go:125: time=\"2026-10-21T07:43:39Z\" level=warning msg=\"Runtime enricher (docker): couldn't get current containers: listing containers with options {Size:false All:true Latest:false Since: Before: Limit:0 Filters:{fields:map[]}}: Get \\\"http://%2Frun%2Fdocker.sock/v1.51/containers/json?all=1\\\": context deadline exceeded\"\n            cluster.go:125: + trap 'kill %%' ERR\n            cluster.go:125: + sudo ig run trace_exec:v0.50.0 --host --filter proc.comm=docker,args~ps --output json --verbose\n            cluster.go:125: + timeout 30 grep -F -m1 running...\n            cluster.go:125: + docker info\n            cluster.go:125: + docker ps\n            cluster.go:125: + docker images\n            cluster.go:125: + kill %%\n            cluster.go:125: + wait\n            cluster.go:125: + jq -s -e '.[] | select(.args == \"/usr/bin/docker\\u00a0ps\")' ig.json\n            cluster.go:125: + jq -s -e 'isempty(.[] | select(.args == \"/usr/bin/docker\\u00a0info\"))' ig.json\n            cluster.go:125: + jq -s -e 'isempty(.[] | select(.args == \"/usr/bin/docker\\u00a0images\"))' ig.json\n            cluster.go:125: + sudo ig run trace_dns:v0.50.0 --help\n            cluster.go:125: + trap 'kill %%' ERR\n            cluster.go:125: + timeout 30 grep -F -m1 running...\n            cluster.go:125: + sudo ig run trace_dns:v0.50.0 --host --filter name=flatcar.org. --output json --verbose\n            cluster.go:125: + dig kinvolk.io\n            cluster.go:125: + dig flatcar.org\n            cluster.go:125: + dig stable.release.flatcar-linux.net\n            cluster.go:125: + kill %%\n            cluster.go:125: + wait\n            cluster.go:125: + jq -s -e '.[] | select(.name == \"flatcar.org.\")' ig.json\n            cluster.go:125: + jq -s -e 'isempty(.[] | select(.name == \"kinvolk.io.\"))' ig.json\n            cluster.go:125: + jq -s -e 'isempty(.[] | select(.name == \"stable.release.flatcar-linux.net.\"))' ig.json\n"},{"name":"docker.lib-coreos-dockerd-compat/resources","result":"PASS","duration":8921782825,"output":"        cluster.go:125: #0 building with \"default\" instance using docker driver\n        cluster.go:125: \n        cluster.go:125: #1 [internal] load build definition from Dockerfile\n        cluster.go:125: #1 transferring dockerfile: 108B 0.0s done\n        cluster.go:125: #1 DONE 0.1s\n        cluster.go:125: \n        cluster.go:125: #2 [internal] load .dockerignore\n        cluster.go:125: #2 transferring context:\n        cluster.go:125: #2 transferring context: 2B done\n        cluster.go:125: #2 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #3 [internal] load build context\n        cluster.go:125: #3 transferring context: 2.12MB 0.0s done\n        cluster.go:125: #3 DONE 0.1s\n        cluster.go:125: \n        cluster.go:125: #4 [1/1] COPY . /\n        cluster.go:125: #4 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #5 exporting to image\n        cluster.go:125: #5 exporting layers\n        cluster.go:125: #5 exporting layers 0.2s done\n        cluster.go:125: #5 exporting manifest sha256:bb6826803c40855ee996067e6d6f7055e79acd696a354f4a2c074d2067168bd2 0.0s done\n        cluster.go:125: #5 exporting config sha256:8a876f8229d9362345894542cdc540e383f79572c98b3a4f79b7e8b24c5a3022 0.0s done\n        cluster.go:125: #5 exporting attestation manifest sha256:23abbf08d45ec50957750e46e38c1a75852d552f9ddeadc47e62e0c91a94f744 0.0s done\n        cluster.go:125: #5 exporting manifest list sha256:6211e5d1bfe063fc94f29a5eda88f5dc52f2fe7a2ecfdd1e0ff3686f747748d4 0.0s done\n        cluster.go:125: #5 naming to docker.io/library/sleep:latest done\n        cluster.go:125: #5 unpacking to docker.io/library/sleep:latest 0.1s done\n        cluster.go:125: #5 DONE 0.4s\n        cluster.go:125: WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded.\n        cluster.go:125: WARNING: Your kernel does not support memory swappiness capabilities or the cgroup is not mounted. Memory swappiness discarded.\n"},{"name":"coreos.ignition.resource.local","result":"PASS","duration":258490962126,"output":""},{"name":"coreos.ignition.security.tls","result":"PASS","duration":260388970527,"output":""},{"name":"docker.lib-coreos-dockerd-compat/networks-reliably","result":"PASS","duration":142436134564,"output":"        cluster.go:125: #0 building with \"default\" instance using docker driver\n        cluster.go:125: \n        cluster.go:125: #1 [internal] load build definition from Dockerfile\n        cluster.go:125: #1 transferring dockerfile: 108B done\n        cluster.go:125: #1 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #2 [internal] load .dockerignore\n        cluster.go:125: #2 transferring context: 2B done\n        cluster.go:125: #2 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #3 [internal] load build context\n        cluster.go:125: #3 transferring context: 4.23MB 0.0s done\n        cluster.go:125: #3 DONE 0.1s\n        cluster.go:125: \n        cluster.go:125: #4 [1/1] COPY . /\n        cluster.go:125: #4 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #5 exporting to image\n        cluster.go:125: #5 exporting layers\n        cluster.go:125: #5 exporting layers 0.2s done\n        cluster.go:125: #5 exporting manifest sha256:16ab62c4163756e6bb75784d04ea9254d963e35f69b31f8e761f4998784e649d\n        cluster.go:125: #5 exporting manifest sha256:16ab62c4163756e6bb75784d04ea9254d963e35f69b31f8e761f4998784e649d 0.0s done\n        cluster.go:125: #5 exporting config sha256:e3f653d6e7816e3b06c98aa27f7df969ad4cfe6f1232379a6759494549d34be3 0.0s done\n        cluster.go:125: #5 exporting attestation manifest sha256:37314f8135e446928e9d29a4518c0c589b59a225456b0d33eafb27d6e2644813 0.0s done\n        cluster.go:125: #5 exporting manifest list sha256:753b34da6b0ed46baf1141b0212e1e57f884f7e572e924e14f5603a8dae084b3 0.0s done\n        cluster.go:125: #5 naming to docker.io/library/ping:latest\n        cluster.go:125: #5 naming to docker.io/library/ping:latest done\n        cluster.go:125: #5 unpacking to docker.io/library/ping:latest 0.0s done\n        cluster.go:125: #5 DONE 0.4s\n"},{"name":"docker.lib-coreos-dockerd-compat/user-no-caps","result":"PASS","duration":4161064251,"output":"        cluster.go:125: #0 building with \"default\" instance using docker driver\n        cluster.go:125: \n        cluster.go:125: #1 [internal] load build definition from Dockerfile\n        cluster.go:125: #1 transferring dockerfile: 108B done\n        cluster.go:125: #1 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #2 [internal] load .dockerignore\n        cluster.go:125: #2 transferring context: 2B done\n        cluster.go:125: #2 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #3 [internal] load build context\n        cluster.go:125: #3 transferring context: 5.22MB 0.0s done\n        cluster.go:125: #3 DONE 0.1s\n        cluster.go:125: \n        cluster.go:125: #4 [1/1] COPY . /\n        cluster.go:125: #4 DONE 0.0s\n        cluster.go:125: \n        cluster.go:125: #5 exporting to image\n        cluster.go:125: #5 exporting layers\n        cluster.go:125: #5 exporting layers 0.2s done\n        cluster.go:125: #5 exporting manifest sha256:004f11d8f8a220e791fd66ec63207b2ee65e2f8400d5a0bb2a39520d93cfbf74 0.0s done\n        cluster.go:125: #5 exporting config sha256:422e4a93bbd0d0aedf7c8fe56c3d5193c6df18139a6c69b943d7bf697fef2c17 0.0s done\n        cluster.go:125: #5 exporting attestation manifest sha256:1b6bd551c2c7e7c4ec85258754fa7d88eed9feb35ee9a81b54ba453063dc9459 0.0s done\n        cluster.go:125: #5 exporting manifest list sha256:58f2f9d6487f4cc62061bf5f54ad706f7faf5342cda3af46225511f491f65d6b\n        cluster.go:125: #5 exporting manifest list sha256:58f2f9d6487f4cc62061bf5f54ad706f7faf5342cda3af46225511f491f65d6b 0.0s done\n        cluster.go:125: #5 naming to docker.io/library/captest:latest done\n        cluster.go:125: #5 unpacking to docker.io/library/captest:latest 0.0s done\n        cluster.go:125: #5 DONE 0.4s\n"},{"name":"docker.lib-coreos-dockerd-compat/ownership","result":"PASS","duration":8833986838,"output":"        cluster.go:125: Unable to find image 'ghcr.io/flatcar/nginx:latest' locally\n        cluster.go:125: latest: Pulling from flatcar/nginx\n        cluster.go:125: 0d6ad25c5ec8: Pulling fs layer\n        cluster.go:125: bb482e962a91: Pulling fs layer\n        cluster.go:125: 8083d0331109: Pulling fs layer\n        cluster.go:125: f5c24fc2ff22: Pulling fs layer\n        cluster.go:125: c403c18c260c: Pulling fs layer\n        cluster.go:125: 1a47f466819b: Pulling fs layer\n        cluster.go:125: 7cdd1ba5135a: Pulling fs layer\n        cluster.go:125: 1a47f466819b: Download complete\n        cluster.go:125: 0d6ad25c5ec8: Download complete\n        cluster.go:125: bb482e962a91: Download complete\n        cluster.go:125: f5c24fc2ff22: Download complete\n        cluster.go:125: c403c18c260c: Download complete\n        cluster.go:125: 8083d0331109: Download complete\n        cluster.go:125: 7cdd1ba5135a: Download complete\n        cluster.go:125: 7cdd1ba5135a: Pull complete\n        cluster.go:125: bb482e962a91: Pull complete\n        cluster.go:125: f5c24fc2ff22: Pull complete\n        cluster.go:125: c403c18c260c: Pull complete\n        cluster.go:125: 8083d0331109: Pull complete\n        cluster.go:125: 1a47f466819b: Pull complete\n        cluster.go:125: 0d6ad25c5ec8: Pull complete\n        cluster.go:125: Digest: sha256:50dc40e9ed93d19d1cf11bdcc014f8db4f7cc6a927f22d7114bb6ddf4d19f92d\n        cluster.go:125: Status: Downloaded newer image for ghcr.io/flatcar/nginx:latest\n"},{"name":"docker.lib-coreos-dockerd-compat","result":"PASS","duration":307327306653,"output":"    --- PASS: docker.lib-coreos-dockerd-compat/docker-info (19.23s)\n    --- PASS: docker.lib-coreos-dockerd-compat/resources (8.92s)\n            cluster.go:125: #0 building with \"default\" instance using docker driver\n            cluster.go:125: \n            cluster.go:125: #1 [internal] load build definition from Dockerfile\n            cluster.go:125: #1 transferring dockerfile: 108B 0.0s done\n            cluster.go:125: #1 DONE 0.1s\n            cluster.go:125: \n            cluster.go:125: #2 [internal] load .dockerignore\n            cluster.go:125: #2 transferring context:\n            cluster.go:125: #2 transferring context: 2B done\n            cluster.go:125: #2 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #3 [internal] load build context\n            cluster.go:125: #3 transferring context: 2.12MB 0.0s done\n            cluster.go:125: #3 DONE 0.1s\n            cluster.go:125: \n            cluster.go:125: #4 [1/1] COPY . /\n            cluster.go:125: #4 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #5 exporting to image\n            cluster.go:125: #5 exporting layers\n            cluster.go:125: #5 exporting layers 0.2s done\n            cluster.go:125: #5 exporting manifest sha256:bb6826803c40855ee996067e6d6f7055e79acd696a354f4a2c074d2067168bd2 0.0s done\n            cluster.go:125: #5 exporting config sha256:8a876f8229d9362345894542cdc540e383f79572c98b3a4f79b7e8b24c5a3022 0.0s done\n            cluster.go:125: #5 exporting attestation manifest sha256:23abbf08d45ec50957750e46e38c1a75852d552f9ddeadc47e62e0c91a94f744 0.0s done\n            cluster.go:125: #5 exporting manifest list sha256:6211e5d1bfe063fc94f29a5eda88f5dc52f2fe7a2ecfdd1e0ff3686f747748d4 0.0s done\n            cluster.go:125: #5 naming to docker.io/library/sleep:latest done\n            cluster.go:125: #5 unpacking to docker.io/library/sleep:latest 0.1s done\n            cluster.go:125: #5 DONE 0.4s\n            cluster.go:125: WARNING: Your kernel does not support OomKillDisable. OomKillDisable discarded.\n            cluster.go:125: WARNING: Your kernel does not support memory swappiness capabilities or the cgroup is not mounted. Memory swappiness discarded.\n    --- PASS: docker.lib-coreos-dockerd-compat/networks-reliably (142.44s)\n            cluster.go:125: #0 building with \"default\" instance using docker driver\n            cluster.go:125: \n            cluster.go:125: #1 [internal] load build definition from Dockerfile\n            cluster.go:125: #1 transferring dockerfile: 108B done\n            cluster.go:125: #1 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #2 [internal] load .dockerignore\n            cluster.go:125: #2 transferring context: 2B done\n            cluster.go:125: #2 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #3 [internal] load build context\n            cluster.go:125: #3 transferring context: 4.23MB 0.0s done\n            cluster.go:125: #3 DONE 0.1s\n            cluster.go:125: \n            cluster.go:125: #4 [1/1] COPY . /\n            cluster.go:125: #4 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #5 exporting to image\n            cluster.go:125: #5 exporting layers\n            cluster.go:125: #5 exporting layers 0.2s done\n            cluster.go:125: #5 exporting manifest sha256:16ab62c4163756e6bb75784d04ea9254d963e35f69b31f8e761f4998784e649d\n            cluster.go:125: #5 exporting manifest sha256:16ab62c4163756e6bb75784d04ea9254d963e35f69b31f8e761f4998784e649d 0.0s done\n            cluster.go:125: #5 exporting config sha256:e3f653d6e7816e3b06c98aa27f7df969ad4cfe6f1232379a6759494549d34be3 0.0s done\n            cluster.go:125: #5 exporting attestation manifest sha256:37314f8135e446928e9d29a4518c0c589b59a225456b0d33eafb27d6e2644813 0.0s done\n            cluster.go:125: #5 exporting manifest list sha256:753b34da6b0ed46baf1141b0212e1e57f884f7e572e924e14f5603a8dae084b3 0.0s done\n            cluster.go:125: #5 naming to docker.io/library/ping:latest\n            cluster.go:125: #5 naming to docker.io/library/ping:latest done\n            cluster.go:125: #5 unpacking to docker.io/library/ping:latest 0.0s done\n            cluster.go:125: #5 DONE 0.4s\n    --- PASS: docker.lib-coreos-dockerd-compat/user-no-caps (4.16s)\n            cluster.go:125: #0 building with \"default\" instance using docker driver\n            cluster.go:125: \n            cluster.go:125: #1 [internal] load build definition from Dockerfile\n            cluster.go:125: #1 transferring dockerfile: 108B done\n            cluster.go:125: #1 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #2 [internal] load .dockerignore\n            cluster.go:125: #2 transferring context: 2B done\n            cluster.go:125: #2 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #3 [internal] load build context\n            cluster.go:125: #3 transferring context: 5.22MB 0.0s done\n            cluster.go:125: #3 DONE 0.1s\n            cluster.go:125: \n            cluster.go:125: #4 [1/1] COPY . /\n            cluster.go:125: #4 DONE 0.0s\n            cluster.go:125: \n            cluster.go:125: #5 exporting to image\n            cluster.go:125: #5 exporting layers\n            cluster.go:125: #5 exporting layers 0.2s done\n            cluster.go:125: #5 exporting manifest sha256:004f11d8f8a220e791fd66ec63207b2ee65e2f8400d5a0bb2a39520d93cfbf74 0.0s done\n            cluster.go:125: #5 exporting config sha256:422e4a93bbd0d0aedf7c8fe56c3d5193c6df18139a6c69b943d7bf697fef2c17 0.0s done\n            cluster.go:125: #5 exporting attestation manifest sha256:1b6bd551c2c7e7c4ec85258754fa7d88eed9feb35ee9a81b54ba453063dc9459 0.0s done\n            cluster.go:125: #5 exporting manifest list sha256:58f2f9d6487f4cc62061bf5f54ad706f7faf5342cda3af46225511f491f65d6b\n            cluster.go:125: #5 exporting manifest list sha256:58f2f9d6487f4cc62061bf5f54ad706f7faf5342cda3af46225511f491f65d6b 0.0s done\n            cluster.go:125: #5 naming to docker.io/library/captest:latest done\n            cluster.go:125: #5 unpacking to docker.io/library/captest:latest 0.0s done\n            cluster.go:125: #5 DONE 0.4s\n    --- PASS: docker.lib-coreos-dockerd-compat/ownership (8.83s)\n            cluster.go:125: Unable to find image 'ghcr.io/flatcar/nginx:latest' locally\n            cluster.go:125: latest: Pulling from flatcar/nginx\n            cluster.go:125: 0d6ad25c5ec8: Pulling fs layer\n            cluster.go:125: bb482e962a91: Pulling fs layer\n            cluster.go:125: 8083d0331109: Pulling fs layer\n            cluster.go:125: f5c24fc2ff22: Pulling fs layer\n            cluster.go:125: c403c18c260c: Pulling fs layer\n            cluster.go:125: 1a47f466819b: Pulling fs layer\n            cluster.go:125: 7cdd1ba5135a: Pulling fs layer\n            cluster.go:125: 1a47f466819b: Download complete\n            cluster.go:125: 0d6ad25c5ec8: Download complete\n            cluster.go:125: bb482e962a91: Download complete\n            cluster.go:125: f5c24fc2ff22: Download complete\n            cluster.go:125: c403c18c260c: Download complete\n            cluster.go:125: 8083d0331109: Download complete\n            cluster.go:125: 7cdd1ba5135a: Download complete\n            cluster.go:125: 7cdd1ba5135a: Pull complete\n            cluster.go:125: bb482e962a91: Pull complete\n            cluster.go:125: f5c24fc2ff22: Pull complete\n            cluster.go:125: c403c18c260c: Pull complete\n            cluster.go:125: 8083d0331109: Pull complete\n            cluster.go:125: 1a47f466819b: Pull complete\n            cluster.go:125: 0d6ad25c5ec8: Pull complete\n            cluster.go:125: Digest: sha256:50dc40e9ed93d19d1cf11bdcc014f8db4f7cc6a927f22d7114bb6ddf4d19f92d\n            cluster.go:125: Status: Downloaded newer image for ghcr.io/flatcar/nginx:latest\n"},{"name":"cl.verity/corruption","result":"PASS","duration":175187855367,"output":""},{"name":"cl.verity","result":"PASS","duration":310733411083,"output":"    --- PASS: cl.verity/verify (12.26s)\n            cluster.go:125: Success\n    --- PASS: cl.verity/corruption (175.19s)\n"},{"name":"kubeadm.v1.37.0.cilium.base/node_readiness","result":"PASS","duration":14187974170,"output":""},{"name":"kubeadm.v1.37.0.cilium.base/nginx_deployment","result":"PASS","duration":9031382190,"output":""},{"name":"kubeadm.v1.35.1.calico.base/node_readiness","result":"PASS","duration":14233016026,"output":""},{"name":"kubeadm.v1.37.0.calico.base/node_readiness","result":"PASS","duration":20488881034,"output":""},{"name":"kubeadm.v1.35.1.calico.base/nginx_deployment","result":"PASS","duration":9141657323,"output":""},{"name":"kubeadm.v1.37.0.cilium.base/NFS_deployment","result":"PASS","duration":18591051170,"output":"        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.37.0.calico.base/nginx_deployment","result":"PASS","duration":9044949284,"output":""},{"name":"kubeadm.v1.36.1.calico.base/node_readiness","result":"PASS","duration":33393773149,"output":""},{"name":"kubeadm.v1.36.1.calico.base/nginx_deployment","result":"PASS","duration":9170624142,"output":""},{"name":"kubeadm.v1.37.0.cilium.base/IPSec_encryption","result":"PASS","duration":19374464539,"output":"        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/mount-cgroup]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/apply-sysctl-overwrites]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/clean-cilium-state]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/cilium-agent]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n"},{"name":"kubeadm.v1.37.0.cilium.base","result":"PASS","duration":522411008471,"output":"        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-apiserver:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-controller-manager:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-scheduler:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-proxy:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/coredns/coredns:v1.14.6\n        cluster.go:125: [config/images] Pulled registry.k8s.io/pause:3.10.2\n        cluster.go:125: [config/images] Pulled registry.k8s.io/etcd:3.7.0-0\n        cluster.go:125: [init] Using Kubernetes version: v1.37.1\n        cluster.go:125: [preflight] Running pre-flight checks\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-b9afe50455\" could not be reached\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-b9afe50455\": lookup ci-4859.0.0-n-b9afe50455 on 168.63.129.16:53: no such host\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n        cluster.go:125: [preflight] Pulling images required for setting up a Kubernetes cluster\n        cluster.go:125: [preflight] This might take a minute or two, depending on the speed of your internet connection\n        cluster.go:125: [preflight] You can also perform this action beforehand using 'kubeadm config images pull'\n        cluster.go:125: [certs] Using certificateDir folder \"/etc/kubernetes/pki\"\n        cluster.go:125: [certs] Generating \"ca\" certificate and key\n        cluster.go:125: [certs] Generating \"apiserver\" certificate and key\n        cluster.go:125: [certs] apiserver serving cert is signed for DNS names [ci-4859.0.0-n-b9afe50455 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.0.0.14]\n        cluster.go:125: [certs] Generating \"apiserver-kubelet-client\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-ca\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-client\" certificate and key\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/ca certificate authority generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/server certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/peer certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/healthcheck-client certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping apiserver-etcd-client certificate generation\n        cluster.go:125: [certs] Generating \"sa\" key and public key\n        cluster.go:125: [kubeconfig] Using kubeconfig folder \"/etc/kubernetes\"\n        cluster.go:125: [kubeconfig] Writing \"admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"super-admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"kubelet.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"controller-manager.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"scheduler.conf\" kubeconfig file\n        cluster.go:125: [control-plane] Using manifest folder \"/etc/kubernetes/manifests\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-apiserver\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-controller-manager\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-scheduler\"\n        cluster.go:125: [kubelet-start] Writing kubelet environment file with flags to file \"/var/lib/kubelet/kubeadm-flags.env\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/instance-config.yaml\"\n        cluster.go:125: [patches] Applied patch of type \"application/strategic-merge-patch+json\" to target \"kubeletconfiguration\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/config.yaml\"\n        cluster.go:125: [kubelet-start] Starting the kubelet\n        cluster.go:125: [wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \"/etc/kubernetes/manifests\"\n        cluster.go:125: [kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\n        cluster.go:125: [kubelet-check] The kubelet is healthy after 660.605µs\n        cluster.go:125: [control-plane-check] Waiting for healthy control plane components. This can take up to 30m0s\n        cluster.go:125: [control-plane-check] Checking kube-apiserver at https://10.0.0.14:6443/livez\n        cluster.go:125: [control-plane-check] Checking kube-controller-manager at https://127.0.0.1:10257/healthz\n        cluster.go:125: [control-plane-check] Checking kube-scheduler at https://127.0.0.1:10259/livez\n        cluster.go:125: [control-plane-check] kube-scheduler is healthy after 504.932581ms\n        cluster.go:125: [control-plane-check] kube-controller-manager is healthy after 508.564877ms\n        cluster.go:125: [control-plane-check] kube-apiserver is healthy after 1.501353174s\n        cluster.go:125: [upload-config] Storing the configuration used in ConfigMap \"kubeadm-config\" in the \"kube-system\" Namespace\n        cluster.go:125: [kubelet] Creating a ConfigMap \"kubelet-config\" in namespace kube-system with the configuration for the kubelets in the cluster\n        cluster.go:125: [upload-certs] Skipping phase. Please see --upload-certs\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-b9afe50455 as control-plane by adding the labels: [node-role.kubernetes.io/control-plane node.kubernetes.io/exclude-from-external-load-balancers]\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-b9afe50455 as control-plane by adding the taints [node-role.kubernetes.io/control-plane:NoSchedule]\n        cluster.go:125: [bootstrap-token] Using token: f6ocki.4jryya9gptk3gbps\n        cluster.go:125: [bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to get nodes\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow certificate rotation for all node client certificates in the cluster\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the API server kubelet client certificate to access the kubelet API\n        cluster.go:125: [bootstrap-token] Creating the \"cluster-info\" ConfigMap in the \"kube-public\" namespace\n        cluster.go:125: [kubelet-finalize] Updating \"/etc/kubernetes/kubelet.conf\" to point to a rotatable kubelet client certificate and key\n        cluster.go:125: [addons] Applied essential addon: CoreDNS\n        cluster.go:125: [addons] Applied essential addon: kube-proxy\n        cluster.go:125: \n        cluster.go:125: Your Kubernetes control-plane has initialized successfully!\n        cluster.go:125: \n        cluster.go:125: To start using your cluster, you need to run the following as a regular user:\n        cluster.go:125: \n        cluster.go:125:   mkdir -p $HOME/.kube\n        cluster.go:125:   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config\n        cluster.go:125:   sudo chown $(id -u):$(id -g) $HOME/.kube/config\n        cluster.go:125: \n        cluster.go:125: Alternatively, if you are the root user, you can run:\n        cluster.go:125: \n        cluster.go:125:   export KUBECONFIG=/etc/kubernetes/admin.conf\n        cluster.go:125: \n        cluster.go:125: You should now deploy a pod network to the cluster.\n        cluster.go:125: Run \"kubectl apply -f [podnetwork].yaml\" with one of the options listed at:\n        cluster.go:125:   https://kubernetes.io/docs/concepts/cluster-administration/addons/\n        cluster.go:125: \n        cluster.go:125: Then you can join any number of worker nodes by running the following on each as root:\n        cluster.go:125: \n        cluster.go:125: kubeadm join 10.0.0.14:6443 --token f6ocki.4jryya9gptk3gbps \\\n        cluster.go:125: \t--discovery-token-ca-cert-hash sha256:6fb082f3b5d292646c2ee2d5386aed533f8118c1e17fdbf4297c511dbca2fdf7 \n        cluster.go:125: i  Using Cilium version 1.12.5\n        cluster.go:125: ? Auto-detected cluster name: kubernetes\n        cluster.go:125: ? Auto-detected datapath mode: tunnel\n        cluster.go:125: ? Auto-detected kube-proxy has been installed\n        cluster.go:125: i  helm template --namespace kube-system cilium cilium/cilium --version 1.12.5 --set cluster.id=0,cluster.name=kubernetes,encryption.nodeEncryption=false,extraConfig.cluster-pool-ipv4-cidr=192.168.0.0/17,extraConfig.enable-endpoint-routes=true,kubeProxyReplacement=disabled,operator.replicas=1,serviceAccounts.cilium.name=cilium,serviceAccounts.operator.name=cilium-operator,tunnel=vxlan\n        cluster.go:125: i  Storing helm values file in kube-system/cilium-cli-helm-values Secret\n        cluster.go:125: ? Created CA in secret cilium-ca\n        cluster.go:125: ? Generating certificates for Hubble...\n        cluster.go:125: ? Creating Service accounts...\n        cluster.go:125: ? Creating Cluster roles...\n        cluster.go:125: ? Creating ConfigMap for Cilium version 1.12.5...\n        cluster.go:125: i  Manual overwrite in ConfigMap: cluster-pool-ipv4-cidr=192.168.0.0/17\n        cluster.go:125: i  Manual overwrite in ConfigMap: enable-endpoint-routes=true\n        cluster.go:125: ? Creating Agent DaemonSet...\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/mount-cgroup]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/apply-sysctl-overwrites]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/clean-cilium-state]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/cilium-agent]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n        cluster.go:125: ? Creating Operator Deployment...\n        cluster.go:125: ? Waiting for Cilium to be installed and ready...\n        cluster.go:125: ? Cilium was successfully installed! Run 'cilium status' to view installation health\n        cluster.go:125: \u001b[33m    /??\\\n        cluster.go:125: \u001b[36m /??\u001b[33m\\__/\u001b[32m??\\\u001b[0m    Cilium:         \u001b[32mOK\u001b[0m\n        cluster.go:125: \u001b[36m \\__\u001b[31m/??\\\u001b[32m__/\u001b[0m    Operator:       \u001b[32mOK\u001b[0m\n        cluster.go:125: \u001b[32m /??\u001b[31m\\__/\u001b[35m??\\\u001b[0m    Hubble:         \u001b[36mdisabled\u001b[0m\n        cluster.go:125: \u001b[32m \\__\u001b[34m/??\\\u001b[35m__/\u001b[0m    ClusterMesh:    \u001b[36mdisabled\u001b[0m\n        cluster.go:125: \u001b[34m    \\__/\n        cluster.go:125: \u001b[0m\n        cluster.go:125: Deployment       cilium-operator    \n        cluster.go:125: DaemonSet        cilium             \n        cluster.go:125: Containers:      cilium             \n        cluster.go:125:                  cilium-operator    \n        cluster.go:125: Cluster Pods:    0/0 managed by Cilium\n        cluster.go:125: W1021 07:49:07.363676    2664 joinconfiguration.go:112] [config] WARNING: Ignored configuration document with GroupVersionKind kubelet.config.k8s.io/v1beta1, Kind=KubeletConfiguration\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n    --- PASS: kubeadm.v1.37.0.cilium.base/node_readiness (14.19s)\n    --- PASS: kubeadm.v1.37.0.cilium.base/nginx_deployment (9.03s)\n    --- PASS: kubeadm.v1.37.0.cilium.base/NFS_deployment (18.59s)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n    --- PASS: kubeadm.v1.37.0.cilium.base/IPSec_encryption (19.37s)\n            cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/mount-cgroup]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n            cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/apply-sysctl-overwrites]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n            cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/clean-cilium-state]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n            cluster.go:125: level=warning msg=\"spec.template.metadata.annotations[container.apparmor.security.beta.kubernetes.io/cilium-agent]: deprecated since v1.30; use the \\\"appArmorProfile\\\" field instead\" subsys=klog\n"},{"name":"kubeadm.v1.35.1.calico.base/NFS_deployment","result":"PASS","duration":31447567698,"output":"        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.35.1.calico.base","result":"PASS","duration":531157923649,"output":"        cluster.go:125: I1021 07:46:21.345636    2655 version.go:260] remote version is much newer: v1.37.1; falling back to: stable-1.35\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-apiserver:v1.35.9\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-controller-manager:v1.35.9\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-scheduler:v1.35.9\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-proxy:v1.35.9\n        cluster.go:125: [config/images] Pulled registry.k8s.io/coredns/coredns:v1.13.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/pause:3.10.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/etcd:3.6.6-0\n        cluster.go:125: I1021 07:46:30.098264    2868 version.go:260] remote version is much newer: v1.37.1; falling back to: stable-1.35\n        cluster.go:125: [init] Using Kubernetes version: v1.35.9\n        cluster.go:125: [preflight] Running pre-flight checks\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-77800c02a7\" could not be reached\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-77800c02a7\": lookup ci-4859.0.0-n-77800c02a7 on 168.63.129.16:53: no such host\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n        cluster.go:125: [preflight] Pulling images required for setting up a Kubernetes cluster\n        cluster.go:125: [preflight] This might take a minute or two, depending on the speed of your internet connection\n        cluster.go:125: [preflight] You can also perform this action beforehand using 'kubeadm config images pull'\n        cluster.go:125: [certs] Using certificateDir folder \"/etc/kubernetes/pki\"\n        cluster.go:125: [certs] Generating \"ca\" certificate and key\n        cluster.go:125: [certs] Generating \"apiserver\" certificate and key\n        cluster.go:125: [certs] apiserver serving cert is signed for DNS names [ci-4859.0.0-n-77800c02a7 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.0.0.17]\n        cluster.go:125: [certs] Generating \"apiserver-kubelet-client\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-ca\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-client\" certificate and key\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/ca certificate authority generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/server certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/peer certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/healthcheck-client certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping apiserver-etcd-client certificate generation\n        cluster.go:125: [certs] Generating \"sa\" key and public key\n        cluster.go:125: [kubeconfig] Using kubeconfig folder \"/etc/kubernetes\"\n        cluster.go:125: [kubeconfig] Writing \"admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"super-admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"kubelet.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"controller-manager.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"scheduler.conf\" kubeconfig file\n        cluster.go:125: [control-plane] Using manifest folder \"/etc/kubernetes/manifests\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-apiserver\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-controller-manager\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-scheduler\"\n        cluster.go:125: [kubelet-start] Writing kubelet environment file with flags to file \"/var/lib/kubelet/kubeadm-flags.env\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/instance-config.yaml\"\n        cluster.go:125: [patches] Applied patch of type \"application/strategic-merge-patch+json\" to target \"kubeletconfiguration\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/config.yaml\"\n        cluster.go:125: [kubelet-start] Starting the kubelet\n        cluster.go:125: [wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \"/etc/kubernetes/manifests\"\n        cluster.go:125: [kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\n        cluster.go:125: [kubelet-check] The kubelet is healthy after 500.879738ms\n        cluster.go:125: [control-plane-check] Waiting for healthy control plane components. This can take up to 30m0s\n        cluster.go:125: [control-plane-check] Checking kube-apiserver at https://10.0.0.17:6443/livez\n        cluster.go:125: [control-plane-check] Checking kube-controller-manager at https://127.0.0.1:10257/healthz\n        cluster.go:125: [control-plane-check] Checking kube-scheduler at https://127.0.0.1:10259/livez\n        cluster.go:125: [control-plane-check] kube-controller-manager is healthy after 1.50714729s\n        cluster.go:125: [control-plane-check] kube-scheduler is healthy after 2.081441764s\n        cluster.go:125: [control-plane-check] kube-apiserver is healthy after 4.00104146s\n        cluster.go:125: [upload-config] Storing the configuration used in ConfigMap \"kubeadm-config\" in the \"kube-system\" Namespace\n        cluster.go:125: [kubelet] Creating a ConfigMap \"kubelet-config\" in namespace kube-system with the configuration for the kubelets in the cluster\n        cluster.go:125: [upload-certs] Skipping phase. Please see --upload-certs\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-77800c02a7 as control-plane by adding the labels: [node-role.kubernetes.io/control-plane node.kubernetes.io/exclude-from-external-load-balancers]\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-77800c02a7 as control-plane by adding the taints [node-role.kubernetes.io/control-plane:NoSchedule]\n        cluster.go:125: [bootstrap-token] Using token: wz8ww9.y14ynzfkqnwy4sbj\n        cluster.go:125: [bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to get nodes\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow certificate rotation for all node client certificates in the cluster\n        cluster.go:125: [bootstrap-token] Creating the \"cluster-info\" ConfigMap in the \"kube-public\" namespace\n        cluster.go:125: [kubelet-finalize] Updating \"/etc/kubernetes/kubelet.conf\" to point to a rotatable kubelet client certificate and key\n        cluster.go:125: [addons] Applied essential addon: CoreDNS\n        cluster.go:125: [addons] Applied essential addon: kube-proxy\n        cluster.go:125: \n        cluster.go:125: Your Kubernetes control-plane has initialized successfully!\n        cluster.go:125: \n        cluster.go:125: To start using your cluster, you need to run the following as a regular user:\n        cluster.go:125: \n        cluster.go:125:   mkdir -p $HOME/.kube\n        cluster.go:125:   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config\n        cluster.go:125:   sudo chown $(id -u):$(id -g) $HOME/.kube/config\n        cluster.go:125: \n        cluster.go:125: Alternatively, if you are the root user, you can run:\n        cluster.go:125: \n        cluster.go:125:   export KUBECONFIG=/etc/kubernetes/admin.conf\n        cluster.go:125: \n        cluster.go:125: You should now deploy a pod network to the cluster.\n        cluster.go:125: Run \"kubectl apply -f [podnetwork].yaml\" with one of the options listed at:\n        cluster.go:125:   https://kubernetes.io/docs/concepts/cluster-administration/addons/\n        cluster.go:125: \n        cluster.go:125: Then you can join any number of worker nodes by running the following on each as root:\n        cluster.go:125: \n        cluster.go:125: kubeadm join 10.0.0.17:6443 --token wz8ww9.y14ynzfkqnwy4sbj \\\n        cluster.go:125: \t--discovery-token-ca-cert-hash sha256:13367f47c1771f151dccd7ef0907da5798dc0e4457845d2386d262f57f4a807c \n        cluster.go:125: namespace/tigera-operator created\n        cluster.go:125: serviceaccount/tigera-operator created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: clusterrolebinding.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: rolebinding.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: deployment.apps/tigera-operator created\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: installation.operator.tigera.io/default created\n        cluster.go:125: apiserver.operator.tigera.io/default created\n        cluster.go:125: goldmane.operator.tigera.io/default created\n        cluster.go:125: whisker.operator.tigera.io/default created\n        cluster.go:125: W1021 07:49:23.593152    2649 joinconfiguration.go:112] [config] WARNING: Ignored configuration document with GroupVersionKind kubelet.config.k8s.io/v1beta1, Kind=KubeletConfiguration\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n    --- PASS: kubeadm.v1.35.1.calico.base/node_readiness (14.23s)\n    --- PASS: kubeadm.v1.35.1.calico.base/nginx_deployment (9.14s)\n    --- PASS: kubeadm.v1.35.1.calico.base/NFS_deployment (31.45s)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.37.0.calico.base/NFS_deployment","result":"PASS","duration":31402363479,"output":"        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.37.0.calico.base","result":"PASS","duration":536552780149,"output":"        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-apiserver:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-controller-manager:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-scheduler:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-proxy:v1.37.1\n        cluster.go:125: [config/images] Pulled registry.k8s.io/coredns/coredns:v1.14.6\n        cluster.go:125: [config/images] Pulled registry.k8s.io/pause:3.10.2\n        cluster.go:125: [config/images] Pulled registry.k8s.io/etcd:3.7.0-0\n        cluster.go:125: [init] Using Kubernetes version: v1.37.1\n        cluster.go:125: [preflight] Running pre-flight checks\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-da65df010c\" could not be reached\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-da65df010c\": lookup ci-4859.0.0-n-da65df010c on 168.63.129.16:53: no such host\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n        cluster.go:125: [preflight] Pulling images required for setting up a Kubernetes cluster\n        cluster.go:125: [preflight] This might take a minute or two, depending on the speed of your internet connection\n        cluster.go:125: [preflight] You can also perform this action beforehand using 'kubeadm config images pull'\n        cluster.go:125: [certs] Using certificateDir folder \"/etc/kubernetes/pki\"\n        cluster.go:125: [certs] Generating \"ca\" certificate and key\n        cluster.go:125: [certs] Generating \"apiserver\" certificate and key\n        cluster.go:125: [certs] apiserver serving cert is signed for DNS names [ci-4859.0.0-n-da65df010c kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.0.0.13]\n        cluster.go:125: [certs] Generating \"apiserver-kubelet-client\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-ca\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-client\" certificate and key\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/ca certificate authority generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/server certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/peer certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/healthcheck-client certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping apiserver-etcd-client certificate generation\n        cluster.go:125: [certs] Generating \"sa\" key and public key\n        cluster.go:125: [kubeconfig] Using kubeconfig folder \"/etc/kubernetes\"\n        cluster.go:125: [kubeconfig] Writing \"admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"super-admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"kubelet.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"controller-manager.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"scheduler.conf\" kubeconfig file\n        cluster.go:125: [control-plane] Using manifest folder \"/etc/kubernetes/manifests\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-apiserver\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-controller-manager\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-scheduler\"\n        cluster.go:125: [kubelet-start] Writing kubelet environment file with flags to file \"/var/lib/kubelet/kubeadm-flags.env\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/instance-config.yaml\"\n        cluster.go:125: [patches] Applied patch of type \"application/strategic-merge-patch+json\" to target \"kubeletconfiguration\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/config.yaml\"\n        cluster.go:125: [kubelet-start] Starting the kubelet\n        cluster.go:125: [wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \"/etc/kubernetes/manifests\"\n        cluster.go:125: [kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\n        cluster.go:125: [kubelet-check] The kubelet is healthy after 553.454µs\n        cluster.go:125: [control-plane-check] Waiting for healthy control plane components. This can take up to 30m0s\n        cluster.go:125: [control-plane-check] Checking kube-apiserver at https://10.0.0.13:6443/livez\n        cluster.go:125: [control-plane-check] Checking kube-controller-manager at https://127.0.0.1:10257/healthz\n        cluster.go:125: [control-plane-check] Checking kube-scheduler at https://127.0.0.1:10259/livez\n        cluster.go:125: [control-plane-check] kube-scheduler is healthy after 3.553916ms\n        cluster.go:125: [control-plane-check] kube-controller-manager is healthy after 5.392564ms\n        cluster.go:125: [control-plane-check] kube-apiserver is healthy after 1.501934123s\n        cluster.go:125: [upload-config] Storing the configuration used in ConfigMap \"kubeadm-config\" in the \"kube-system\" Namespace\n        cluster.go:125: [kubelet] Creating a ConfigMap \"kubelet-config\" in namespace kube-system with the configuration for the kubelets in the cluster\n        cluster.go:125: [upload-certs] Skipping phase. Please see --upload-certs\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-da65df010c as control-plane by adding the labels: [node-role.kubernetes.io/control-plane node.kubernetes.io/exclude-from-external-load-balancers]\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-da65df010c as control-plane by adding the taints [node-role.kubernetes.io/control-plane:NoSchedule]\n        cluster.go:125: [bootstrap-token] Using token: 1gulpp.bidilerkg56dp08o\n        cluster.go:125: [bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to get nodes\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow certificate rotation for all node client certificates in the cluster\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the API server kubelet client certificate to access the kubelet API\n        cluster.go:125: [bootstrap-token] Creating the \"cluster-info\" ConfigMap in the \"kube-public\" namespace\n        cluster.go:125: [kubelet-finalize] Updating \"/etc/kubernetes/kubelet.conf\" to point to a rotatable kubelet client certificate and key\n        cluster.go:125: [addons] Applied essential addon: CoreDNS\n        cluster.go:125: [addons] Applied essential addon: kube-proxy\n        cluster.go:125: \n        cluster.go:125: Your Kubernetes control-plane has initialized successfully!\n        cluster.go:125: \n        cluster.go:125: To start using your cluster, you need to run the following as a regular user:\n        cluster.go:125: \n        cluster.go:125:   mkdir -p $HOME/.kube\n        cluster.go:125:   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config\n        cluster.go:125:   sudo chown $(id -u):$(id -g) $HOME/.kube/config\n        cluster.go:125: \n        cluster.go:125: Alternatively, if you are the root user, you can run:\n        cluster.go:125: \n        cluster.go:125:   export KUBECONFIG=/etc/kubernetes/admin.conf\n        cluster.go:125: \n        cluster.go:125: You should now deploy a pod network to the cluster.\n        cluster.go:125: Run \"kubectl apply -f [podnetwork].yaml\" with one of the options listed at:\n        cluster.go:125:   https://kubernetes.io/docs/concepts/cluster-administration/addons/\n        cluster.go:125: \n        cluster.go:125: Then you can join any number of worker nodes by running the following on each as root:\n        cluster.go:125: \n        cluster.go:125: kubeadm join 10.0.0.13:6443 --token 1gulpp.bidilerkg56dp08o \\\n        cluster.go:125: \t--discovery-token-ca-cert-hash sha256:130f24124643458ca2b766522d712b2a82d32dc70b2194674c482fc77ebf455b \n        cluster.go:125: namespace/tigera-operator created\n        cluster.go:125: serviceaccount/tigera-operator created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: clusterrolebinding.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: rolebinding.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: deployment.apps/tigera-operator created\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: installation.operator.tigera.io/default created\n        cluster.go:125: apiserver.operator.tigera.io/default created\n        cluster.go:125: goldmane.operator.tigera.io/default created\n        cluster.go:125: whisker.operator.tigera.io/default created\n        cluster.go:125: W1021 07:49:22.979885    2570 joinconfiguration.go:112] [config] WARNING: Ignored configuration document with GroupVersionKind kubelet.config.k8s.io/v1beta1, Kind=KubeletConfiguration\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n    --- PASS: kubeadm.v1.37.0.calico.base/node_readiness (20.49s)\n    --- PASS: kubeadm.v1.37.0.calico.base/nginx_deployment (9.04s)\n    --- PASS: kubeadm.v1.37.0.calico.base/NFS_deployment (31.40s)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.36.1.calico.base/NFS_deployment","result":"PASS","duration":31628183993,"output":"        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n        cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"},{"name":"kubeadm.v1.36.1.calico.base","result":"PASS","duration":550501172792,"output":"        cluster.go:125: I1021 07:46:22.156668    2715 version.go:260] remote version is much newer: v1.37.1; falling back to: stable-1.36\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-apiserver:v1.36.5\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-controller-manager:v1.36.5\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-scheduler:v1.36.5\n        cluster.go:125: [config/images] Pulled registry.k8s.io/kube-proxy:v1.36.5\n        cluster.go:125: [config/images] Pulled registry.k8s.io/coredns/coredns:v1.14.2\n        cluster.go:125: [config/images] Pulled registry.k8s.io/pause:3.10.2\n        cluster.go:125: [config/images] Pulled registry.k8s.io/etcd:3.6.8-0\n        cluster.go:125: I1021 07:46:30.836681    2949 version.go:260] remote version is much newer: v1.37.1; falling back to: stable-1.36\n        cluster.go:125: [init] Using Kubernetes version: v1.36.5\n        cluster.go:125: [preflight] Running pre-flight checks\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-0cc7459629\" could not be reached\n        cluster.go:125: \t[WARNING Hostname]: hostname \"ci-4859.0.0-n-0cc7459629\": lookup ci-4859.0.0-n-0cc7459629 on 168.63.129.16:53: no such host\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n        cluster.go:125: [preflight] Pulling images required for setting up a Kubernetes cluster\n        cluster.go:125: [preflight] This might take a minute or two, depending on the speed of your internet connection\n        cluster.go:125: [preflight] You can also perform this action beforehand using 'kubeadm config images pull'\n        cluster.go:125: [certs] Using certificateDir folder \"/etc/kubernetes/pki\"\n        cluster.go:125: [certs] Generating \"ca\" certificate and key\n        cluster.go:125: [certs] Generating \"apiserver\" certificate and key\n        cluster.go:125: [certs] apiserver serving cert is signed for DNS names [ci-4859.0.0-n-0cc7459629 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 10.0.0.18]\n        cluster.go:125: [certs] Generating \"apiserver-kubelet-client\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-ca\" certificate and key\n        cluster.go:125: [certs] Generating \"front-proxy-client\" certificate and key\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/ca certificate authority generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/server certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/peer certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping etcd/healthcheck-client certificate generation\n        cluster.go:125: [certs] External etcd mode: Skipping apiserver-etcd-client certificate generation\n        cluster.go:125: [certs] Generating \"sa\" key and public key\n        cluster.go:125: [kubeconfig] Using kubeconfig folder \"/etc/kubernetes\"\n        cluster.go:125: [kubeconfig] Writing \"admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"super-admin.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"kubelet.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"controller-manager.conf\" kubeconfig file\n        cluster.go:125: [kubeconfig] Writing \"scheduler.conf\" kubeconfig file\n        cluster.go:125: [control-plane] Using manifest folder \"/etc/kubernetes/manifests\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-apiserver\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-controller-manager\"\n        cluster.go:125: [control-plane] Creating static Pod manifest for \"kube-scheduler\"\n        cluster.go:125: [kubelet-start] Writing kubelet environment file with flags to file \"/var/lib/kubelet/kubeadm-flags.env\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/instance-config.yaml\"\n        cluster.go:125: [patches] Applied patch of type \"application/strategic-merge-patch+json\" to target \"kubeletconfiguration\"\n        cluster.go:125: [kubelet-start] Writing kubelet configuration to file \"/var/lib/kubelet/config.yaml\"\n        cluster.go:125: [kubelet-start] Starting the kubelet\n        cluster.go:125: [wait-control-plane] Waiting for the kubelet to boot up the control plane as static Pods from directory \"/etc/kubernetes/manifests\"\n        cluster.go:125: [kubelet-check] Waiting for a healthy kubelet at http://127.0.0.1:10248/healthz. This can take up to 4m0s\n        cluster.go:125: [kubelet-check] The kubelet is healthy after 941.634µs\n        cluster.go:125: [control-plane-check] Waiting for healthy control plane components. This can take up to 30m0s\n        cluster.go:125: [control-plane-check] Checking kube-apiserver at https://10.0.0.18:6443/livez\n        cluster.go:125: [control-plane-check] Checking kube-controller-manager at https://127.0.0.1:10257/healthz\n        cluster.go:125: [control-plane-check] Checking kube-scheduler at https://127.0.0.1:10259/livez\n        cluster.go:125: [control-plane-check] kube-controller-manager is healthy after 8.211085ms\n        cluster.go:125: [control-plane-check] kube-scheduler is healthy after 10.167246ms\n        cluster.go:125: [control-plane-check] kube-apiserver is healthy after 1.501378119s\n        cluster.go:125: [upload-config] Storing the configuration used in ConfigMap \"kubeadm-config\" in the \"kube-system\" Namespace\n        cluster.go:125: [kubelet] Creating a ConfigMap \"kubelet-config\" in namespace kube-system with the configuration for the kubelets in the cluster\n        cluster.go:125: [upload-certs] Skipping phase. Please see --upload-certs\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-0cc7459629 as control-plane by adding the labels: [node-role.kubernetes.io/control-plane node.kubernetes.io/exclude-from-external-load-balancers]\n        cluster.go:125: [mark-control-plane] Marking the node ci-4859.0.0-n-0cc7459629 as control-plane by adding the taints [node-role.kubernetes.io/control-plane:NoSchedule]\n        cluster.go:125: [bootstrap-token] Using token: 3ji2b5.r7jnclsc3u7uvgsk\n        cluster.go:125: [bootstrap-token] Configuring bootstrap tokens, cluster-info ConfigMap, RBAC Roles\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to get nodes\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow Node Bootstrap tokens to post CSRs in order for nodes to get long term certificate credentials\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the csrapprover controller automatically approve CSRs from a Node Bootstrap Token\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow certificate rotation for all node client certificates in the cluster\n        cluster.go:125: [bootstrap-token] Configured RBAC rules to allow the API server kubelet client certificate to access the kubelet API\n        cluster.go:125: [bootstrap-token] Creating the \"cluster-info\" ConfigMap in the \"kube-public\" namespace\n        cluster.go:125: [kubelet-finalize] Updating \"/etc/kubernetes/kubelet.conf\" to point to a rotatable kubelet client certificate and key\n        cluster.go:125: [addons] Applied essential addon: CoreDNS\n        cluster.go:125: [addons] Applied essential addon: kube-proxy\n        cluster.go:125: \n        cluster.go:125: Your Kubernetes control-plane has initialized successfully!\n        cluster.go:125: \n        cluster.go:125: To start using your cluster, you need to run the following as a regular user:\n        cluster.go:125: \n        cluster.go:125:   mkdir -p $HOME/.kube\n        cluster.go:125:   sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config\n        cluster.go:125:   sudo chown $(id -u):$(id -g) $HOME/.kube/config\n        cluster.go:125: \n        cluster.go:125: Alternatively, if you are the root user, you can run:\n        cluster.go:125: \n        cluster.go:125:   export KUBECONFIG=/etc/kubernetes/admin.conf\n        cluster.go:125: \n        cluster.go:125: You should now deploy a pod network to the cluster.\n        cluster.go:125: Run \"kubectl apply -f [podnetwork].yaml\" with one of the options listed at:\n        cluster.go:125:   https://kubernetes.io/docs/concepts/cluster-administration/addons/\n        cluster.go:125: \n        cluster.go:125: Then you can join any number of worker nodes by running the following on each as root:\n        cluster.go:125: \n        cluster.go:125: kubeadm join 10.0.0.18:6443 --token 3ji2b5.r7jnclsc3u7uvgsk \\\n        cluster.go:125: \t--discovery-token-ca-cert-hash sha256:79d04782376222226e0727bc252ee1bcea938e59aeea06804efceb910e3bd975 \n        cluster.go:125: namespace/tigera-operator created\n        cluster.go:125: serviceaccount/tigera-operator created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: clusterrole.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: clusterrolebinding.rbac.authorization.k8s.io/tigera-operator created\n        cluster.go:125: rolebinding.rbac.authorization.k8s.io/tigera-operator-secrets created\n        cluster.go:125: deployment.apps/tigera-operator created\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/installations.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: customresourcedefinition.apiextensions.k8s.io/apiservers.operator.tigera.io condition met\n        cluster.go:125: installation.operator.tigera.io/default created\n        cluster.go:125: apiserver.operator.tigera.io/default created\n        cluster.go:125: goldmane.operator.tigera.io/default created\n        cluster.go:125: whisker.operator.tigera.io/default created\n        cluster.go:125: W1021 07:49:23.410414    2666 joinconfiguration.go:112] [config] WARNING: Ignored configuration document with GroupVersionKind kubelet.config.k8s.io/v1beta1, Kind=KubeletConfiguration\n        cluster.go:125: \t[WARNING Service-kubelet]: kubelet service is not enabled, please run 'systemctl enable kubelet.service'\n        cluster.go:125: W1021 07:49:23.549336    2666 utils.go:69] The recommended value for \"bindAddress\" in \"KubeProxyConfiguration\" is: ::; the provided value is: 0.0.0.0\n    --- PASS: kubeadm.v1.36.1.calico.base/node_readiness (33.39s)\n    --- PASS: kubeadm.v1.36.1.calico.base/nginx_deployment (9.17s)\n    --- PASS: kubeadm.v1.36.1.calico.base/NFS_deployment (31.63s)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n            cluster.go:125: jq: error (at \u003cstdin\u003e:123): Cannot iterate over null (null)\n"}],"result":"PASS","platform":"azure","version":"4859.0.0"}
