commit | a0bc6d3f0ce4f3a73eb0019e4f18f508ee36ce21 | [log] [tgz] |
---|---|---|
author | Serge Bazanski <serge@monogon.tech> | Wed Jun 28 18:57:40 2023 +0200 |
committer | Serge Bazanski <serge@monogon.tech> | Mon Jul 03 08:03:11 2023 +0000 |
tree | 6f77b3184d1cd558dfd8f29437fb61c2e74df431 | |
parent | 3722025f8ed0b46eb7f48c7c0fbfc53de9e84340 [diff] |
m/test/e2e: split core/kubernetes tests, clean up This splits the large TestE2E function into two separate functions and tests: one which exercises the core functionality of Kubernetes, the other which exercises just the Kubernetes bits. This allows for easier testing during development, and generally trades off higher resources usage for faster execution time in CI. At the same time we do some small cleanups of the E2E functionality: 1. Node startup is now parallelized. 2. Non-bootstrap nodes can now be left in NEW (this was used in diagnosing issue #234, but it currently unused in the main code). 3. Kubernetes access now goes over SOCKS. 4. Some Cluster helper functions have been added. All in all this should allow us writing more E2E tests in the future, and at some point also maybe turn Cluster into an interface that is implemented both by the current framework but also some persistent tests running against long-term VMs/physical machines. Change-Id: Ia4586b2aaa5fc8c979d35f4b49513638481e4c10 Reviewed-on: https://review.monogon.dev/c/monogon/+/1870 Tested-by: Jenkins CI Reviewed-by: Lorenz Brun <lorenz@monogon.tech>
This is the main repository containing the source code for the Monogon Platform.
This is pre-release software - take a look, and check back later!
Our build environment is self-contained and requires only minimal host dependencies:
/dev/kvm
(if you want to run tests).Our docs assume that Bazelisk is available as bazel
on your PATH.
Refer to SETUP.md for detailed instructions.
Build CLI and node image:
bazel build //metropolis/cli/dbg //:launch -c dbg
Launch an ephemeral test node:
bazel test //:launch -c dbg --test_output=streamed
Run a kubectl command while the test is running:
bazel-bin/metropolis/cli/dbg/dbg_/dbg kubectl describe node
Run full test suite:
bazel test -c dbg //...