talos/internal/app/osd/proto/api.proto
2018-12-19 22:22:05 -08:00

59 lines
1.4 KiB
Protocol Buffer

syntax = "proto3";
package proto;
import "google/protobuf/empty.proto";
// The OSD service definition.
service OSD {
rpc Kubeconfig(google.protobuf.Empty) returns (Data) {}
rpc Processes(google.protobuf.Empty) returns (ProcessesReply) {}
rpc Restart(RestartRequest) returns (RestartReply) {}
rpc Reset(google.protobuf.Empty) returns (ResetReply) {}
rpc Reboot(google.protobuf.Empty) returns (RebootReply) {}
rpc Logs(LogsRequest) returns (stream Data) {}
rpc Dmesg(google.protobuf.Empty) returns (Data) {}
rpc Version(google.protobuf.Empty) returns (Data) {}
}
// The response message containing the requested processes.
message ProcessesReply {
repeated Process processes = 1;
}
// The response message containing the requested processes.
message Process {
string id = 1;
string image = 2;
string status = 3;
uint64 memory_usage = 4;
uint64 cpu_usage = 5;
}
// The request message containing the process to restart.
message RestartRequest {
string id = 1;
int32 timeout = 2;
}
// The response message containing the restart status.
message RestartReply {}
// The response message containing the restart status.
message ResetReply {}
// The response message containing the restart status.
message RebootReply {}
// The request message containing the process name.
message LogsRequest {
string process = 1;
bool container = 2;
}
// The response message containing the requested logs.
message Data {
bytes bytes = 1;
}