cloud/agent: use new OS image format for install

This switches the Agent installation method to the new OS image format
based on OCI artifacts. OS images are now fetched from an OCI registry.

Change-Id: Icd59a2c808fd607b95d8aaa8e60022a27fd2d091
Reviewed-on: https://review.monogon.dev/c/monogon/+/4091
Reviewed-by: Tim Windelschmidt <tim@monogon.tech>
Tested-by: Jenkins CI
diff --git a/cloud/bmaas/server/api/agent.proto b/cloud/bmaas/server/api/agent.proto
index 67ec4a3..3b3c5b2 100644
--- a/cloud/bmaas/server/api/agent.proto
+++ b/cloud/bmaas/server/api/agent.proto
@@ -3,6 +3,7 @@
 option go_package = "source.monogon.dev/cloud/bmaas/server/api";
 
 import "metropolis/proto/api/configuration.proto";
+import "metropolis/proto/api/management.proto";
 import "cloud/agent/api/hwreport.proto";
 
 // AgentCallback runs on the BMDB Server and exposes a gRPC interface to agents
@@ -65,8 +66,9 @@
 }
 
 message MetropolisInstallationRequest {
-  // An HTTPS URL to a Metropolis bundle containing the OS to install.
-  string bundle_url = 1;
+  reserved 1;
+  // Parameters for fetching the OS image to install.
+  metropolis.proto.api.OSImageRef os_image = 4;
   // Node parameters to be supplied to the new node. Note that network_config
   // is automatically filled out if coming from the takeover.
   metropolis.proto.api.NodeParameters node_parameters = 2;
@@ -94,4 +96,4 @@
   // If set, the control plane is requesting the installation of an operating
   // system.
   OSInstallationRequest installation_request = 1;
-}
\ No newline at end of file
+}