m/test: implement non-transient QEMU VMs
This patch reworks the launch code, enabling rebooting of cluster
member VMs, while precluding erasure of their transient state (disk
image, OVMF firmware variables, TPM state, MAC address).
RebootNode method included in this patch is cluster-aware in the sense
that it blocks until the node has re-joined the cluster.
Change-Id: Ie1236297d214399e927a67295200f8b8879a5b39
Reviewed-on: https://review.monogon.dev/c/monogon/+/664
Reviewed-by: Sergiusz Bazanski <serge@monogon.tech>
diff --git a/metropolis/test/launch/cluster/BUILD.bazel b/metropolis/test/launch/cluster/BUILD.bazel
index b70428c..54e6a46 100644
--- a/metropolis/test/launch/cluster/BUILD.bazel
+++ b/metropolis/test/launch/cluster/BUILD.bazel
@@ -18,6 +18,7 @@
importpath = "source.monogon.dev/metropolis/test/launch/cluster",
visibility = ["//visibility:public"],
deps = [
+ "//metropolis/cli/pkg/datafile",
"//metropolis/node",
"//metropolis/node/core/identity",
"//metropolis/node/core/rpc",