mirror of
https://github.com/siderolabs/sidero.git
synced 2025-10-22 04:51:11 +02:00
This PR adds port support for BMC info, making it possible to use tools like virtualbmc and VMs with sidero. Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
77 lines
1.6 KiB
Protocol Buffer
77 lines
1.6 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package api;
|
|
|
|
option go_package =
|
|
"github.com/talos-systems/sidero/app/sidero-controller-manager/internal/api";
|
|
|
|
service Agent {
|
|
rpc CreateServer(CreateServerRequest) returns(CreateServerResponse);
|
|
rpc MarkServerAsWiped(MarkServerAsWipedRequest)
|
|
returns(MarkServerAsWipedResponse);
|
|
rpc ReconcileServerAddresses(ReconcileServerAddressesRequest)
|
|
returns(ReconcileServerAddressesResponse);
|
|
rpc Heartbeat(HeartbeatRequest) returns(HeartbeatResponse);
|
|
rpc UpdateBMCInfo(UpdateBMCInfoRequest) returns(UpdateBMCInfoResponse);
|
|
}
|
|
|
|
message BMCInfo {
|
|
string ip = 1;
|
|
uint32 port = 2;
|
|
string user = 3;
|
|
string pass = 4;
|
|
}
|
|
|
|
message SystemInformation {
|
|
string uuid = 1;
|
|
string manufacturer = 2;
|
|
string product_name = 3;
|
|
string version = 4;
|
|
string serial_number = 5;
|
|
string sku_number = 6;
|
|
string family = 7;
|
|
}
|
|
|
|
message CPU {
|
|
string manufacturer = 1;
|
|
string version = 2;
|
|
}
|
|
|
|
message CreateServerRequest {
|
|
SystemInformation system_information = 1;
|
|
CPU cpu = 2;
|
|
string hostname = 3;
|
|
}
|
|
|
|
message Address {
|
|
string type = 1;
|
|
string address = 2;
|
|
}
|
|
|
|
message CreateServerResponse {
|
|
bool wipe = 1;
|
|
bool insecure_wipe = 2;
|
|
bool setup_bmc = 3;
|
|
double reboot_timeout = 4;
|
|
}
|
|
|
|
message MarkServerAsWipedRequest { string uuid = 1; }
|
|
message HeartbeatRequest { string uuid = 1; }
|
|
|
|
message MarkServerAsWipedResponse {}
|
|
message HeartbeatResponse {}
|
|
|
|
message UpdateBMCInfoRequest {
|
|
string uuid = 1;
|
|
BMCInfo bmc_info = 2;
|
|
}
|
|
|
|
message UpdateBMCInfoResponse {}
|
|
|
|
message ReconcileServerAddressesRequest {
|
|
string uuid = 1;
|
|
repeated Address address = 2;
|
|
}
|
|
|
|
message ReconcileServerAddressesResponse {}
|