syntax = "proto3"; package gloo.solo.io; import "extproto/ext.proto"; import "github.com/solo-io/gloo/projects/gloo/api/v1/proxy.proto"; import "github.com/solo-io/solo-kit/api/v1/metadata.proto"; option go_package = "github.com/solo-io/gloo/projects/gloo/pkg/api/grpc/debug"; // The proxy endpoint service is used to display proxies held in memory as a replacement for reading from etcd with kubectl get. service ProxyEndpointService { // Get a filtered list of proxies. rpc GetProxies(ProxyEndpointRequest) returns(ProxyEndpointResponse) { } } message ProxyEndpointRequest { // Optional. The namespace to look for proxies. If this is omitted, all namespaces will be considered. string namespace = 1; // Optional. The name of the proxy to look up. If this is provided, a namespace must be included as well. string name = 2; // Optional. Equality-based selector to use to filter returned proxies. This will be ignored if a name is provided. // See https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#equality-based-requirement // If both `selector` and `expressionSelector` are defined, then `expressionSelector` is used. map selector = 3; reserved 4; // Optional. Set-based selector to use to filter returned proxies. This will be ignored if a name is provided. // See https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#set-based-requirement // If both `selector` and `expressionSelector` are defined, then `expressionSelector` is used. string expression_selector = 5; } message ProxyEndpointResponse { // List of proxies returned from the gloo pod. repeated Proxy proxies = 1; }