Skip to content

Commit d7d70c6

Browse files
authored
xds: cncf/xds proto sync to 2025-05-02 (#12225)
1 parent d352540 commit d7d70c6

File tree

8 files changed

+49
-20
lines changed

8 files changed

+49
-20
lines changed

repositories.bzl

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -101,10 +101,10 @@ def grpc_java_repositories(bzlmod = False):
101101
if not native.existing_rule("com_github_cncf_xds"):
102102
http_archive(
103103
name = "com_github_cncf_xds",
104-
strip_prefix = "xds-024c85f92f20cab567a83acc50934c7f9711d124",
105-
sha256 = "5f403aa681711500ca8e62387be3e37d971977db6e88616fc21862a406430649",
104+
strip_prefix = "xds-2ac532fd44436293585084f8d94c6bdb17835af0",
105+
sha256 = "790c4c83b6950bb602fec221f6a529d9f368cdc8852aae7d2592d0d04b015f37",
106106
urls = [
107-
"https://github.com/cncf/xds/archive/024c85f92f20cab567a83acc50934c7f9711d124.tar.gz",
107+
"https://github.com/cncf/xds/archive/2ac532fd44436293585084f8d94c6bdb17835af0.tar.gz",
108108
],
109109
)
110110
if not bzlmod and not native.existing_rule("com_github_grpc_grpc"):

xds/third_party/xds/import.sh

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717

1818
set -e
1919
# import VERSION from one of the google internal CLs
20-
VERSION=024c85f92f20cab567a83acc50934c7f9711d124
20+
VERSION=2ac532fd44436293585084f8d94c6bdb17835af0
2121
DOWNLOAD_URL="https://github.com/cncf/xds/archive/${VERSION}.tar.gz"
2222
DOWNLOAD_BASE_DIR="xds-${VERSION}"
2323
SOURCE_PROTO_BASE_DIR="${DOWNLOAD_BASE_DIR}"
@@ -40,6 +40,7 @@ xds/annotations/v3/versioning.proto
4040
xds/core/v3/authority.proto
4141
xds/core/v3/collection_entry.proto
4242
xds/core/v3/context_params.proto
43+
xds/core/v3/cidr.proto
4344
xds/core/v3/extension.proto
4445
xds/core/v3/resource_locator.proto
4546
xds/core/v3/resource_name.proto
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
syntax = "proto3";
2+
3+
package xds.core.v3;
4+
5+
import "xds/annotations/v3/status.proto";
6+
import "google/protobuf/wrappers.proto";
7+
8+
import "validate/validate.proto";
9+
10+
option java_outer_classname = "CidrRangeProto";
11+
option java_multiple_files = true;
12+
option java_package = "com.github.xds.core.v3";
13+
option go_package = "github.com/cncf/xds/go/xds/core/v3";
14+
15+
option (xds.annotations.v3.file_status).work_in_progress = true;
16+
17+
// CidrRange specifies an IP Address and a prefix length to construct
18+
// the subnet mask for a `CIDR <https://tools.ietf.org/html/rfc4632>`_ range.
19+
message CidrRange {
20+
// IPv4 or IPv6 address, e.g. ``192.0.0.0`` or ``2001:db8::``.
21+
string address_prefix = 1 [(validate.rules).string = {min_len: 1}];
22+
23+
// Length of prefix, e.g. 0, 32. Defaults to 0 when unset.
24+
google.protobuf.UInt32Value prefix_len = 2 [(validate.rules).uint32 = {lte: 128}];
25+
}

xds/third_party/xds/src/main/proto/xds/data/orca/v3/orca_load_report.proto

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ option go_package = "github.com/cncf/xds/go/xds/data/orca/v3";
1010
import "validate/validate.proto";
1111

1212
// See section `ORCA load report format` of the design document in
13-
// :ref:`https://github.com/envoyproxy/envoy/issues/6614`.
13+
// https://github.com/envoyproxy/envoy/issues/6614.
1414

1515
message OrcaLoadReport {
1616
// CPU utilization expressed as a fraction of available CPU resources. This

xds/third_party/xds/src/main/proto/xds/type/matcher/v3/cel.proto

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,18 +2,14 @@ syntax = "proto3";
22

33
package xds.type.matcher.v3;
44

5-
import "xds/annotations/v3/status.proto";
65
import "xds/type/v3/cel.proto";
7-
86
import "validate/validate.proto";
97

108
option java_package = "com.github.xds.type.matcher.v3";
119
option java_outer_classname = "CelProto";
1210
option java_multiple_files = true;
1311
option go_package = "github.com/cncf/xds/go/xds/type/matcher/v3";
1412

15-
option (xds.annotations.v3.file_status).work_in_progress = true;
16-
1713
// [#protodoc-title: Common Expression Language (CEL) matchers]
1814

1915
// Performs a match by evaluating a `Common Expression Language
@@ -24,14 +20,13 @@ option (xds.annotations.v3.file_status).work_in_progress = true;
2420
//
2521
// The match is ``true``, iff the result of the evaluation is a bool AND true.
2622
// In all other cases, the match is ``false``, including but not limited to: non-bool types,
27-
// ``false``, ``null``,`` int(1)``, etc.
23+
// ``false``, ``null``, ``int(1)``, etc.
2824
// In case CEL expression raises an error, the result of the evaluation is interpreted "no match".
2925
//
3026
// Refer to :ref:`Unified Matcher API <envoy_v3_api_msg_.xds.type.matcher.v3.Matcher>` documentation
3127
// for usage details.
3228
//
33-
// [#comment:TODO(sergiitk): Link HttpAttributesMatchInput + usage example.]
34-
// [#comment:TODO(sergiitk): When implemented, add the extension tag.]
29+
// [#comment: envoy.matching.matchers.cel_matcher]
3530
message CelMatcher {
3631
// Either parsed or checked representation of the CEL program.
3732
type.v3.CelExpression expr_match = 1 [(validate.rules).message = {required: true}];

xds/third_party/xds/src/main/proto/xds/type/matcher/v3/http_inputs.proto

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,15 +2,11 @@ syntax = "proto3";
22

33
package xds.type.matcher.v3;
44

5-
import "xds/annotations/v3/status.proto";
6-
75
option java_package = "com.github.xds.type.matcher.v3";
86
option java_outer_classname = "HttpInputsProto";
97
option java_multiple_files = true;
108
option go_package = "github.com/cncf/xds/go/xds/type/matcher/v3";
119

12-
option (xds.annotations.v3.file_status).work_in_progress = true;
13-
1410
// [#protodoc-title: Common HTTP Inputs]
1511

1612
// Specifies that matching should be performed on the set of :ref:`HTTP attributes
@@ -22,6 +18,6 @@ option (xds.annotations.v3.file_status).work_in_progress = true;
2218
// Refer to :ref:`Unified Matcher API <envoy_v3_api_msg_.xds.type.matcher.v3.Matcher>` documentation
2319
// for usage details.
2420
//
25-
// [#comment:TODO(sergiitk): When implemented, add the extension tag.]
21+
// [#comment: envoy.matching.inputs.cel_data_input]
2622
message HttpAttributesCelMatchInput {
2723
}

xds/third_party/xds/src/main/proto/xds/type/matcher/v3/matcher.proto

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ syntax = "proto3";
22

33
package xds.type.matcher.v3;
44

5-
import "xds/annotations/v3/status.proto";
65
import "xds/core/v3/extension.proto";
76
import "xds/type/matcher/v3/string.proto";
87

@@ -21,8 +20,6 @@ option go_package = "github.com/cncf/xds/go/xds/type/matcher/v3";
2120
// As an on_no_match might result in another matching tree being evaluated, this process
2221
// might repeat several times until the final OnMatch (or no match) is decided.
2322
message Matcher {
24-
option (xds.annotations.v3.message_status).work_in_progress = true;
25-
2623
// What to do if a match is successful.
2724
message OnMatch {
2825
oneof on_match {
@@ -38,6 +35,14 @@ message Matcher {
3835
// Protocol-specific action to take.
3936
core.v3.TypedExtensionConfig action = 2;
4037
}
38+
39+
// If true and the Matcher matches, the action will be taken but the caller
40+
// will behave as if the Matcher did not match. A subsequent matcher or
41+
// on_no_match action will be used instead.
42+
// This field is not supported in all contexts in which the matcher API is
43+
// used. If this field is set in a context in which it's not supported,
44+
// the resource will be rejected.
45+
bool keep_matching = 3;
4146
}
4247

4348
// A linear list of field matchers.

xds/third_party/xds/src/main/proto/xds/type/v3/cel.proto

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,13 @@ message CelExpression {
4747
//
4848
// If set, takes precedence over ``cel_expr_parsed``.
4949
cel.expr.CheckedExpr cel_expr_checked = 4;
50+
51+
// Unparsed expression in string form. For example, ``request.headers['x-env'] == 'prod'`` will
52+
// get ``x-env`` header value and compare it with ``prod``.
53+
// Check the `Common Expression Language <https://github.com/google/cel-spec>`_ for more details.
54+
//
55+
// If set, takes precedence over ``cel_expr_parsed`` and ``cel_expr_checked``.
56+
string cel_expr_string = 5;
5057
}
5158

5259
// Extracts a string by evaluating a `Common Expression Language

0 commit comments

Comments
 (0)