xref: /aosp_15_r20/external/grpc-grpc-java/xds/third_party/envoy/src/main/proto/envoy/api/v2/eds.proto (revision e07d83d3ffcef9ecfc9f7f475418ec639ff0e5fe)
1syntax = "proto3";
2
3package envoy.api.v2;
4
5import "envoy/api/v2/discovery.proto";
6
7import "google/api/annotations.proto";
8
9import "envoy/annotations/resource.proto";
10import "udpa/annotations/migrate.proto";
11import "udpa/annotations/status.proto";
12
13import public "envoy/api/v2/endpoint.proto";
14
15option java_package = "io.envoyproxy.envoy.api.v2";
16option java_outer_classname = "EdsProto";
17option java_multiple_files = true;
18option go_package = "github.com/envoyproxy/go-control-plane/envoy/api/v2;apiv2";
19option (udpa.annotations.file_migrate).move_to_package = "envoy.service.endpoint.v3";
20option (udpa.annotations.file_status).package_version_status = FROZEN;
21
22// [#protodoc-title: EDS]
23// Endpoint discovery :ref:`architecture overview <arch_overview_service_discovery_types_eds>`
24
25service EndpointDiscoveryService {
26  option (envoy.annotations.resource).type = "envoy.api.v2.ClusterLoadAssignment";
27
28  // The resource_names field in DiscoveryRequest specifies a list of clusters
29  // to subscribe to updates for.
30  rpc StreamEndpoints(stream DiscoveryRequest) returns (stream DiscoveryResponse) {
31  }
32
33  rpc DeltaEndpoints(stream DeltaDiscoveryRequest) returns (stream DeltaDiscoveryResponse) {
34  }
35
36  rpc FetchEndpoints(DiscoveryRequest) returns (DiscoveryResponse) {
37    option (google.api.http).post = "/v2/discovery:endpoints";
38    option (google.api.http).body = "*";
39  }
40}
41
42// [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing
43// services: https://github.com/google/protobuf/issues/4221 and protoxform to upgrade the file.
44message EdsDummy {
45}
46