commit | d14be0eb8bcffb6ba597f26e3ad57b311ca376fc | [log] [tgz] |
---|---|---|
author | Lorenz Brun <lorenz@monogon.tech> | Mon Jul 31 16:46:14 2023 +0200 |
committer | Lorenz Brun <lorenz@monogon.tech> | Mon Aug 07 11:37:10 2023 +0000 |
tree | 3a1286f0eb3623db53c4cb2c880eb5a1059ae1f0 | |
parent | c07d74efd282261c68d33d745d52a6703448c8fd [diff] |
m/n/c/update: implement kexec-based activation As we've had some issues with EFI-based slot activation and enterprise server firmware is extremely slow, this implements kexec-based activation. This just kexecs into the freshly-installed slot instead of rebooting. It still updates the BootOrder on successful boot to allow cold-boots if the server crashes or loses power, but no longer uses the NextBoot mechanism to boot into the new slot once (this is taken care of by kexec). Change-Id: I6092c47d988634ba39fb6bdd7fd7ccd41ceb02ef Reviewed-on: https://review.monogon.dev/c/monogon/+/2021 Reviewed-by: Serge Bazanski <serge@monogon.tech> Tested-by: Jenkins CI
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 //...