Files
kubevpn/pkg/daemon/rpc/daemon.proto
2023-10-02 13:44:23 +08:00

90 lines
1.6 KiB
Protocol Buffer

syntax = "proto3";
option go_package = ".;rpc";
package rpc;
service Daemon {
rpc Connect (ConnectRequest) returns (stream ConnectResponse) {}
rpc Proxy (ConnectRequest) returns (stream ConnectResponse) {}
rpc Disconnect (DisconnectRequest) returns (stream DisconnectResponse) {}
rpc Logs (LogRequest) returns (stream LogResponse) {}
rpc Status (StatusRequest) returns (StatusResponse) {}
rpc Quit (QuitRequest) returns (stream QuitResponse) {}
rpc List (ListRequest) returns (ListResponse) {}
rpc Leave (LeaveRequest) returns (stream LeaveResponse) {}
}
message ConnectRequest {
string KubeconfigBytes = 1;
string Namespace = 2;
map<string, string> Headers = 3;
repeated string Workloads = 4;
repeated string ExtraCIDR = 5;
repeated string ExtraDomain = 6;
bool UseLocalDNS = 7;
string Engine = 8;
// ssh jump
string Addr = 9;
string User = 10;
string Password = 11;
string Keyfile = 12;
string ConfigAlias = 13;
string RemoteKubeconfig = 14;
// transfer image
bool TransferImage = 15;
string Image = 16;
// log level
int32 Level = 17;
}
message ConnectResponse {
string message = 1;
}
message QuitRequest {
}
message QuitResponse {
string message = 1;
}
message StatusRequest {
string name = 1;
}
message StatusResponse {
string message = 1;
}
message LogRequest {
bool Follow = 1;
}
message LogResponse {
string message = 1;
}
message DisconnectRequest {
}
message DisconnectResponse {
string message = 1;
}
message ListRequest {
}
message ListResponse {
string message = 1;
}
message LeaveRequest {
repeated string Workloads = 1;
}
message LeaveResponse {
string message = 1;
}