Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions lib/teleterm/api/proto/v1/cluster.proto
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,10 @@ message Cluster {
bool leaf = 5;
// User is the cluster access control list of the logged-in user
LoggedInUser logged_in_user = 7;
// features describes the auth servers features
// Only present in situations where detailed
// information is queried from the auth server.
Features features = 8;
}

// LoggedInUser describes a logged-in user
Expand Down Expand Up @@ -90,3 +94,9 @@ message ResourceAccess {
// delete determines "delete" access
bool delete = 5;
}

// Features describes the auth servers features
message Features {
// AdvancedAccessWorkflows enables search-based access requests
bool advanced_access_workflows = 1;
}
5 changes: 4 additions & 1 deletion lib/teleterm/api/proto/v1/service.proto
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,10 @@ option go_package = "github.com/gravitational/teleport/lib/teleterm/v1";
// TerminalService describes Teleterm service
service TerminalService {
// ListRootClusters lists root clusters
// Does not include detailed cluster information that would require a network request.
rpc ListRootClusters(ListClustersRequest) returns (ListClustersResponse);
// ListLeafClusters lists leaf clusters
// Does not include detailed cluster information that would require a network request.
rpc ListLeafClusters(ListLeafClustersRequest) returns (ListClustersResponse);
// GetAllDatabases lists all databases without pagination
rpc GetAllDatabases(GetAllDatabasesRequest) returns (GetAllDatabasesResponse);
Expand Down Expand Up @@ -89,7 +91,8 @@ service TerminalService {

// GetAuthSettings returns cluster auth settigns
rpc GetAuthSettings(GetAuthSettingsRequest) returns (AuthSettings);
// GetCluster returns a cluster
// GetCluster returns cluster. Makes a network request and includes detailed
// information about enterprise features availabed on the connected auth server
rpc GetCluster(GetClusterRequest) returns (Cluster);
// Login logs in a user to a cluster
rpc Login(LoginRequest) returns (EmptyResponse);
Expand Down
7 changes: 6 additions & 1 deletion lib/teleterm/api/protogen/golang/v1/access_request.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

258 changes: 170 additions & 88 deletions lib/teleterm/api/protogen/golang/v1/cluster.pb.go

Large diffs are not rendered by default.

10 changes: 8 additions & 2 deletions lib/teleterm/api/protogen/golang/v1/service.pb.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

28 changes: 28 additions & 0 deletions lib/teleterm/api/protogen/js/v1/cluster_pb.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,12 @@ export class Cluster extends jspb.Message {
setLoggedInUser(value?: LoggedInUser): Cluster;


hasFeatures(): boolean;
clearFeatures(): void;
getFeatures(): Features | undefined;
setFeatures(value?: Features): Cluster;


serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Cluster.AsObject;
static toObject(includeInstance: boolean, msg: Cluster): Cluster.AsObject;
Expand All @@ -47,6 +53,7 @@ export namespace Cluster {
connected: boolean,
leaf: boolean,
loggedInUser?: LoggedInUser.AsObject,
features?: Features.AsObject,
}
}

Expand Down Expand Up @@ -233,3 +240,24 @@ export namespace ResourceAccess {
pb_delete: boolean,
}
}

export class Features extends jspb.Message {
getAdvancedAccessWorkflows(): boolean;
setAdvancedAccessWorkflows(value: boolean): Features;


serializeBinary(): Uint8Array;
toObject(includeInstance?: boolean): Features.AsObject;
static toObject(includeInstance: boolean, msg: Features): Features.AsObject;
static extensions: {[key: number]: jspb.ExtensionFieldInfo<jspb.Message>};
static extensionsBinary: {[key: number]: jspb.ExtensionFieldBinaryInfo<jspb.Message>};
static serializeBinaryToWriter(message: Features, writer: jspb.BinaryWriter): void;
static deserializeBinary(bytes: Uint8Array): Features;
static deserializeBinaryFromReader(message: Features, reader: jspb.BinaryReader): Features;
}

export namespace Features {
export type AsObject = {
advancedAccessWorkflows: boolean,
}
}
Loading