talos/internal/app/osd/proto/api.proto
Spencer Smith a2704eeaca feat: add route printing to osctl (#404)
Signed-off-by: Spencer Smith <robertspencersmith@gmail.com>
2019-02-22 06:16:01 -08:00

84 lines
2.3 KiB
Protocol Buffer

syntax = "proto3";
package proto;
import "google/protobuf/empty.proto";
// The OSD service definition.
service OSD {
rpc Dmesg(google.protobuf.Empty) returns (Data) {}
rpc Kubeconfig(google.protobuf.Empty) returns (Data) {}
rpc Logs(LogsRequest) returns (stream Data) {}
rpc Processes(ProcessesRequest) returns (ProcessesReply) {}
rpc Reboot(google.protobuf.Empty) returns (RebootReply) {}
rpc Reset(google.protobuf.Empty) returns (ResetReply) {}
rpc Restart(RestartRequest) returns (RestartReply) {}
rpc Routes(google.protobuf.Empty) returns (RoutesReply) {}
rpc Stats(StatsRequest) returns (StatsReply) {}
rpc Version(google.protobuf.Empty) returns (Data) {}
}
// The request message containing the containerd namespace.
message ProcessesRequest { string namespace = 1; }
// The response message containing the requested processes.
message ProcessesReply { repeated Process processes = 1; }
// The response message containing the requested processes.
message Process {
string namespace = 1;
string id = 2;
string image = 3;
uint32 pid = 4;
string status = 5;
}
// The request message containing the containerd namespace.
message StatsRequest { string namespace = 1; }
// The response message containing the requested stats.
message StatsReply { repeated Stat stats = 1; }
// The response message containing the requested stat.
message Stat {
string namespace = 1;
string id = 2;
uint64 memory_usage = 4;
uint64 cpu_usage = 5;
}
// The request message containing the process to restart.
message RestartRequest {
string namespace = 1;
string id = 2;
int32 timeout = 3;
}
// 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 namespace = 1;
string id = 2;
}
// The response message containing the requested logs.
message Data { bytes bytes = 1; }
// The response message containing the routes.
message RoutesReply { repeated Route routes = 1; }
// The response message containing a route.
message Route {
string interface = 1;
string destination = 2;
string gateway = 3;
}