Updated protos with new routes API

This commit is contained in:
Juan Font 2022-11-26 00:02:40 +00:00
parent 20d599ae34
commit 1ce3d95d95
2 changed files with 59 additions and 22 deletions

View File

@ -126,17 +126,31 @@ service HeadscaleService {
// --- Machine end ---
// --- Route start ---
rpc GetMachineRoute(GetMachineRouteRequest) returns (GetMachineRouteResponse) {
rpc GetRoutes(GetRoutesRequest) returns (GetRoutesResponse) {
option (google.api.http) = {
get: "/api/v1/routes"
};
}
rpc EnableRoute(EnableRouteRequest) returns (EnableRouteResponse) {
option (google.api.http) = {
post: "/api/v1/routes/{route_id}/enable"
};
}
rpc DisableRoute(DisableRouteRequest) returns (DisableRouteResponse) {
option (google.api.http) = {
post: "/api/v1/routes/{route_id}/disable"
};
}
rpc GetMachineRoutes(GetMachineRoutesRequest) returns (GetMachineRoutesResponse) {
option (google.api.http) = {
get: "/api/v1/machine/{machine_id}/routes"
};
}
rpc EnableMachineRoutes(EnableMachineRoutesRequest) returns (EnableMachineRoutesResponse) {
option (google.api.http) = {
post: "/api/v1/machine/{machine_id}/routes"
};
}
// --- Route end ---
// --- ApiKeys start ---

View File

@ -2,24 +2,47 @@ syntax = "proto3";
package headscale.v1;
option go_package = "github.com/juanfont/headscale/gen/go/v1";
message Routes {
repeated string advertised_routes = 1;
repeated string enabled_routes = 2;
import "google/protobuf/timestamp.proto";
import "headscale/v1/machine.proto";
message Route {
uint64 id = 1;
Machine machine = 2;
string prefix = 3;
bool advertised = 4;
bool enabled = 5;
bool is_primary = 6;
google.protobuf.Timestamp created_at = 7;
google.protobuf.Timestamp updated_at = 8;
google.protobuf.Timestamp deleted_at = 9;
}
message GetMachineRouteRequest {
message GetRoutesRequest {
}
message GetRoutesResponse {
repeated Route routes = 1;
}
message EnableRouteRequest {
uint64 route_id = 1;
}
message EnableRouteResponse {
}
message DisableRouteRequest {
uint64 route_id = 1;
}
message DisableRouteResponse {
}
message GetMachineRoutesRequest {
uint64 machine_id = 1;
}
message GetMachineRouteResponse {
Routes routes = 1;
}
message EnableMachineRoutesRequest {
uint64 machine_id = 1;
repeated string routes = 2;
}
message EnableMachineRoutesResponse {
Routes routes = 1;
}
message GetMachineRoutesResponse {
repeated Route routes = 1;
}