mirror of https://github.com/grpc/grpc-java.git
xds: import cncf/xds (#9862)
This commit is contained in:
parent
4876996d84
commit
b7164f0791
|
@ -18,7 +18,7 @@
|
|||
set -e
|
||||
BRANCH=main
|
||||
# import VERSION from one of the google internal CLs
|
||||
VERSION=d92e9ce0af512a73a3a126b32fa4920bee12e180
|
||||
VERSION=06c439db220b89134a8a49bad41994560d6537c6
|
||||
GIT_REPO="https://github.com/cncf/xds.git"
|
||||
GIT_BASE_DIR=xds
|
||||
SOURCE_PROTO_BASE_DIR=xds
|
||||
|
|
|
@ -11,7 +11,6 @@ option java_multiple_files = true;
|
|||
option java_package = "com.github.udpa.udpa.type.v1";
|
||||
option go_package = "github.com/cncf/xds/go/udpa/type/v1";
|
||||
|
||||
import "validate/validate.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
// A TypedStruct contains an arbitrary JSON serialized protocol buffer message with a URL that
|
||||
|
|
|
@ -20,15 +20,17 @@ option (xds.annotations.v3.file_status).work_in_progress = true;
|
|||
// appearing inside a list collection resource. List collection resources are
|
||||
// regular Resource messages of type:
|
||||
//
|
||||
// message <T>Collection {
|
||||
// repeated CollectionEntry resources = 1;
|
||||
// }
|
||||
// .. code-block:: proto
|
||||
//
|
||||
// message <T>Collection {
|
||||
// repeated CollectionEntry resources = 1;
|
||||
// }
|
||||
//
|
||||
message CollectionEntry {
|
||||
// Inlined resource entry.
|
||||
message InlineEntry {
|
||||
// Optional name to describe the inlined resource. Resource names must
|
||||
// [a-zA-Z0-9_-\./]+ (TODO(htuch): turn this into a PGV constraint once
|
||||
// Optional name to describe the inlined resource. Resource names must match
|
||||
// ``[a-zA-Z0-9_-\./]+`` (TODO(htuch): turn this into a PGV constraint once
|
||||
// finalized, probably should be a RFC3986 pchar). This name allows
|
||||
// reference via the #entry directive in ResourceLocator.
|
||||
string name = 1 [(validate.rules).string.pattern = "^[0-9a-zA-Z_\\-\\.~:]+$"];
|
||||
|
|
|
@ -15,6 +15,7 @@ option (xds.annotations.v3.file_status).work_in_progress = true;
|
|||
// global context parameters, per-resource type client feature capabilities and per-resource
|
||||
// type functional attributes. All per-resource type attributes will be `xds.resource.`
|
||||
// prefixed and some of these are documented below:
|
||||
//
|
||||
// `xds.resource.listening_address`: The value is "IP:port" (e.g. "10.1.1.3:8080") which is
|
||||
// the listening address of a Listener. Used in a Listener resource query.
|
||||
message ContextParams {
|
||||
|
|
|
@ -23,7 +23,8 @@ message OrcaLoadReport {
|
|||
|
||||
// Total RPS being served by an endpoint. This should cover all services that an endpoint is
|
||||
// responsible for.
|
||||
uint64 rps = 3;
|
||||
// Deprecated -- use ``rps_fractional`` field instead.
|
||||
uint64 rps = 3 [deprecated = true];
|
||||
|
||||
// Application specific requests costs. Each value is an absolute cost (e.g. 3487 bytes of
|
||||
// storage) associated with the request.
|
||||
|
@ -33,4 +34,8 @@ message OrcaLoadReport {
|
|||
// available, derived from the latest sample or measurement.
|
||||
map<string, double> utilization = 5
|
||||
[(validate.rules).map.values.double.gte = 0, (validate.rules).map.values.double.lte = 1];
|
||||
|
||||
// Total RPS being served by an endpoint. This should cover all services that an endpoint is
|
||||
// responsible for.
|
||||
double rps_fractional = 6 [(validate.rules).double.gte = 0];
|
||||
}
|
||||
|
|
|
@ -11,8 +11,6 @@ import "xds/data/orca/v3/orca_load_report.proto";
|
|||
|
||||
import "google/protobuf/duration.proto";
|
||||
|
||||
import "validate/validate.proto";
|
||||
|
||||
// See section `Out-of-band (OOB) reporting` of the design document in
|
||||
// :ref:`https://github.com/envoyproxy/envoy/issues/6614`.
|
||||
|
||||
|
|
|
@ -7,7 +7,6 @@ option java_multiple_files = true;
|
|||
option java_package = "com.github.xds.type.v3";
|
||||
option go_package = "github.com/cncf/xds/go/xds/type/v3";
|
||||
|
||||
import "validate/validate.proto";
|
||||
import "google/protobuf/struct.proto";
|
||||
|
||||
// A TypedStruct contains an arbitrary JSON serialized protocol buffer message with a URL that
|
||||
|
@ -20,6 +19,7 @@ import "google/protobuf/struct.proto";
|
|||
// When packing an opaque extension config, packing the expected type into Any is preferred
|
||||
// wherever possible for its efficiency. TypedStruct should be used only if a proto descriptor
|
||||
// is not available, for example if:
|
||||
//
|
||||
// - A control plane sends opaque message that is originally from external source in human readable
|
||||
// format such as JSON or YAML.
|
||||
// - The control plane doesn't have the knowledge of the protocol buffer schema hence it cannot
|
||||
|
@ -30,6 +30,7 @@ import "google/protobuf/struct.proto";
|
|||
// When a DPLB receives a TypedStruct in Any, it should:
|
||||
// - Check if the type_url of the TypedStruct matches the type the extension expects.
|
||||
// - Convert value to the type described in type_url and perform validation.
|
||||
//
|
||||
// TODO(lizan): Figure out how TypeStruct should be used with DPLB extensions that doesn't link
|
||||
// protobuf descriptor with DPLB itself, (e.g. gRPC LB Plugin, Envoy WASM extensions).
|
||||
message TypedStruct {
|
||||
|
|
Loading…
Reference in New Issue