Spencer Smith 7cdae7b616 feat: add ability to specify ports for BMC
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>
2021-07-08 13:37:54 -07:00

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 {}