Redo route code (#2422)
Signed-off-by: Kristoffer Dalby <kristoffer@tailscale.com>
This commit is contained in:
parent
16868190c8
commit
7891378f57
53 changed files with 2977 additions and 6251 deletions
|
@ -7,10 +7,8 @@ import "google/api/annotations.proto";
|
|||
import "headscale/v1/user.proto";
|
||||
import "headscale/v1/preauthkey.proto";
|
||||
import "headscale/v1/node.proto";
|
||||
import "headscale/v1/routes.proto";
|
||||
import "headscale/v1/apikey.proto";
|
||||
import "headscale/v1/policy.proto";
|
||||
// import "headscale/v1/device.proto";
|
||||
|
||||
service HeadscaleService {
|
||||
// --- User start ---
|
||||
|
@ -87,6 +85,14 @@ service HeadscaleService {
|
|||
};
|
||||
}
|
||||
|
||||
rpc SetApprovedRoutes(SetApprovedRoutesRequest)
|
||||
returns (SetApprovedRoutesResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/v1/node/{node_id}/approve_routes"
|
||||
body : "*"
|
||||
};
|
||||
}
|
||||
|
||||
rpc RegisterNode(RegisterNodeRequest) returns (RegisterNodeResponse) {
|
||||
option (google.api.http) = {
|
||||
post : "/api/v1/node/register"
|
||||
|
@ -133,39 +139,6 @@ service HeadscaleService {
|
|||
|
||||
// --- Node end ---
|
||||
|
||||
// --- Route start ---
|
||||
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 GetNodeRoutes(GetNodeRoutesRequest) returns (GetNodeRoutesResponse) {
|
||||
option (google.api.http) = {
|
||||
get : "/api/v1/node/{node_id}/routes"
|
||||
};
|
||||
}
|
||||
|
||||
rpc DeleteRoute(DeleteRouteRequest) returns (DeleteRouteResponse) {
|
||||
option (google.api.http) = {
|
||||
delete : "/api/v1/routes/{route_id}"
|
||||
};
|
||||
}
|
||||
|
||||
// --- Route end ---
|
||||
|
||||
// --- ApiKeys start ---
|
||||
rpc CreateApiKey(CreateApiKeyRequest) returns (CreateApiKeyResponse) {
|
||||
option (google.api.http) = {
|
||||
|
|
|
@ -48,6 +48,9 @@ message Node {
|
|||
repeated string valid_tags = 20;
|
||||
string given_name = 21;
|
||||
bool online = 22;
|
||||
repeated string approved_routes = 23;
|
||||
repeated string available_routes = 24;
|
||||
repeated string subnet_routes = 25;
|
||||
}
|
||||
|
||||
message RegisterNodeRequest {
|
||||
|
@ -68,6 +71,13 @@ message SetTagsRequest {
|
|||
|
||||
message SetTagsResponse { Node node = 1; }
|
||||
|
||||
message SetApprovedRoutesRequest {
|
||||
uint64 node_id = 1;
|
||||
repeated string routes = 2;
|
||||
}
|
||||
|
||||
message SetApprovedRoutesResponse { Node node = 1; }
|
||||
|
||||
message DeleteNodeRequest { uint64 node_id = 1; }
|
||||
|
||||
message DeleteNodeResponse {}
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
syntax = "proto3";
|
||||
package headscale.v1;
|
||||
option go_package = "github.com/juanfont/headscale/gen/go/v1";
|
||||
|
||||
import "google/protobuf/timestamp.proto";
|
||||
import "headscale/v1/node.proto";
|
||||
|
||||
message Route {
|
||||
uint64 id = 1;
|
||||
Node node = 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 GetRoutesRequest {}
|
||||
|
||||
message GetRoutesResponse { repeated Route routes = 1; }
|
||||
|
||||
message EnableRouteRequest { uint64 route_id = 1; }
|
||||
|
||||
message EnableRouteResponse {}
|
||||
|
||||
message DisableRouteRequest { uint64 route_id = 1; }
|
||||
|
||||
message DisableRouteResponse {}
|
||||
|
||||
message GetNodeRoutesRequest { uint64 node_id = 1; }
|
||||
|
||||
message GetNodeRoutesResponse { repeated Route routes = 1; }
|
||||
|
||||
message DeleteRouteRequest { uint64 route_id = 1; }
|
||||
|
||||
message DeleteRouteResponse {}
|
Loading…
Add table
Add a link
Reference in a new issue