mirror of https://github.com/k3s-io/k3s
![]() Automatic merge from submit-queue Node Conformance: Node Conformance CI For https://github.com/kubernetes/kubernetes/issues/37252. The first 2 commits of this PR are from #38150 and #38152. Please review those 2 PRs first, they are both minor cleanup. This PR: * Add `TestSuite` interface in `test/e2e_node/remote` to separate test suite logic (packaging, deploy, run test) from VM lifecycle management logic, so that different test suites can share the same VM lifecycle management logic. * Different test suites such as node e2e, node conformance, node soaking, cri validation etc. should implement different `TestSuite`. * `test/e2e_node/runner/remote` will initialize and run different test suite based on the subcommand. * Add `run-kubelet-mode` which only starts and monitors kubelet, similar with `run-services-mode`. The reason we need this: * Unlike node e2e, node conformance test doesn't start kubelet inside the test suite (in fact, in the future node e2e shouldn't do that either), it assumes kubelet is already running before the test. * In fact, node e2e should use similar node bootstrap script like cluster e2e, and the bootstrap script should initialize the node with all necessary node software including kubelet. However, it's not the case now. * The easiest way for now is to reuse the kubelet start logic in the test suite. So in this PR, we added `run-kubelet-mode`, and use the test binary as a kubelet launcher to start kubelet before running the test. * Implement node e2e `TestSuite`. * Implement node conformance `TestSuite`. Use `docker save` and `docker load` to create and deploy conformance docker image; Start kubelet by running test binary in `run-kubelet-mode`; Run conformance test with `docker run`. This PR will make it easy to implement continuous integration node soaking test and cri validation test (https://github.com/kubernetes/kubernetes/pull/35266). /cc @kubernetes/sig-node |
||
---|---|---|
.. | ||
e2e | ||
e2e_node | ||
fixtures | ||
images | ||
integration | ||
kubemark | ||
list | ||
soak | ||
utils | ||
OWNERS | ||
test_owners.csv |