allow VM nodes to offer multiple slot offers

This commit is contained in:
ghe0 2025-07-05 16:36:35 +03:00
parent 90192d7231
commit 388ef8dd27
Signed by: ghe0
GPG Key ID: 451028EE56A0FBB4
2 changed files with 14 additions and 8 deletions

@ -32,6 +32,10 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
".general_proto.InspectOperatorResp", ".general_proto.InspectOperatorResp",
"#[derive(serde::Serialize, serde::Deserialize)]", "#[derive(serde::Serialize, serde::Deserialize)]",
) )
.type_attribute(
".vm_proto.VmNodeOffer",
"#[derive(serde::Serialize, serde::Deserialize)]",
)
.type_attribute( .type_attribute(
".vm_proto.VmNodeListResp", ".vm_proto.VmNodeListResp",
"#[derive(serde::Serialize, serde::Deserialize)]", "#[derive(serde::Serialize, serde::Deserialize)]",

@ -58,15 +58,20 @@ message RegisterVmNodeReq {
uint64 price = 7; uint64 price = 7;
} }
message VmNodeOffer {
uint64 price = 1;
uint64 vcpus = 2;
uint64 memory_mib = 3;
uint64 disk_mib = 4;
}
message VmNodeResources { message VmNodeResources {
string node_pubkey = 1; string node_pubkey = 1;
uint32 avail_ports = 2; uint32 avail_ports = 2;
uint32 avail_ipv4 = 3; uint32 avail_ipv4 = 3;
uint32 avail_ipv6 = 4; uint32 avail_ipv6 = 4;
uint32 avail_vcpus = 5; uint32 max_ports_per_vm = 5;
uint32 avail_memory_mib = 6; repeated VmNodeOffer offers = 6;
uint32 avail_storage_mib = 7;
uint32 max_ports_per_vm = 8;
} }
message NewVmReq { message NewVmReq {
@ -176,10 +181,7 @@ message VmNodeListResp {
string city = 5; string city = 5;
string ip = 6; // required for latency test string ip = 6; // required for latency test
repeated string reports = 7; // TODO: this will become an enum repeated string reports = 7; // TODO: this will become an enum
uint64 price = 8; // nanocredits per unit per minute repeated VmNodeOffer offers = 9;
uint64 vcpus = 9;
uint64 memory_mib = 10;
uint64 disk_mib = 11;
bool public_ipv4 = 12; bool public_ipv4 = 12;
bool public_ipv6 = 13; bool public_ipv6 = 13;
} }