envoy.service.route.v3.srds.proto Maven / Gradle / Ivy
syntax = "proto3";
package envoy.service.route.v3;
import "envoy/service/discovery/v3/discovery.proto";
import "google/api/annotations.proto";
import "envoy/annotations/resource.proto";
import "udpa/annotations/status.proto";
import "udpa/annotations/versioning.proto";
option java_package = "io.envoyproxy.envoy.service.route.v3";
option java_outer_classname = "SrdsProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/service/route/v3;routev3";
option (udpa.annotations.file_status).package_version_status = ACTIVE;
// [#protodoc-title: SRDS]
// * Routing :ref:`architecture overview `
// The Scoped Routes Discovery Service (SRDS) API distributes
// :ref:`ScopedRouteConfiguration`
// resources. Each ScopedRouteConfiguration resource represents a "routing
// scope" containing a mapping that allows the HTTP connection manager to
// dynamically assign a routing table (specified via a
// :ref:`RouteConfiguration` message) to each
// HTTP request.
service ScopedRoutesDiscoveryService {
option (envoy.annotations.resource).type = "envoy.config.route.v3.ScopedRouteConfiguration";
rpc StreamScopedRoutes(stream discovery.v3.DiscoveryRequest)
returns (stream discovery.v3.DiscoveryResponse) {
}
rpc DeltaScopedRoutes(stream discovery.v3.DeltaDiscoveryRequest)
returns (stream discovery.v3.DeltaDiscoveryResponse) {
}
rpc FetchScopedRoutes(discovery.v3.DiscoveryRequest) returns (discovery.v3.DiscoveryResponse) {
option (google.api.http).post = "/v3/discovery:scoped-routes";
option (google.api.http).body = "*";
}
}
// [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing
// services: https://github.com/google/protobuf/issues/4221 and protoxform to upgrade the file.
message SrdsDummy {
option (udpa.annotations.versioning).previous_message_type = "envoy.api.v2.SrdsDummy";
}