forked from envoyproxy/envoy
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
zhangji36680
authored and
zhangji36680
committed
Sep 22, 2021
1 parent
77d7cec
commit a01dc87
Showing
94 changed files
with
7,110 additions
and
4 deletions.
There are no files selected for viewing
Validating CODEOWNERS rules …
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. | ||
|
||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") | ||
|
||
licenses(["notice"]) # Apache 2 | ||
|
||
api_proto_package( | ||
deps = ["@com_github_cncf_udpa//udpa/annotations:pkg"], | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
syntax = "proto3"; | ||
|
||
package envoy.config.filter.jres.router.v2alpha1; | ||
|
||
import "udpa/annotations/migrate.proto"; | ||
import "udpa/annotations/status.proto"; | ||
|
||
option java_package = "io.envoyproxy.envoy.config.filter.jres.router.v2alpha1"; | ||
option java_outer_classname = "RouterProto"; | ||
option java_multiple_files = true; | ||
option (udpa.annotations.file_migrate).move_to_package = | ||
"envoy.extensions.filters.network.jres_proxy.router.v3"; | ||
option (udpa.annotations.file_status).package_version_status = FROZEN; | ||
|
||
// [#protodoc-title: Router] | ||
// Jres router :ref:`configuration overview <config_jres_filters_router>`. | ||
|
||
message Router { | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. | ||
|
||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") | ||
|
||
licenses(["notice"]) # Apache 2 | ||
|
||
api_proto_package( | ||
deps = [ | ||
"//envoy/api/v2/route:pkg", | ||
"//envoy/type:pkg", | ||
"//envoy/type/matcher:pkg", | ||
"@com_github_cncf_udpa//udpa/annotations:pkg", | ||
], | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Protocol buffer definitions for the Jres proxy. |
66 changes: 66 additions & 0 deletions
66
api/envoy/config/filter/network/jres_proxy/v2alpha1/jres_proxy.proto
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,66 @@ | ||
syntax = "proto3"; | ||
|
||
package envoy.config.filter.network.jres_proxy.v2alpha1; | ||
|
||
import "envoy/config/filter/network/jres_proxy/v2alpha1/route.proto"; | ||
|
||
import "google/protobuf/any.proto"; | ||
|
||
import "udpa/annotations/migrate.proto"; | ||
import "udpa/annotations/status.proto"; | ||
import "validate/validate.proto"; | ||
|
||
option java_package = "io.envoyproxy.envoy.config.filter.network.jres_proxy.v2alpha1"; | ||
option java_outer_classname = "JresProxyProto"; | ||
option java_multiple_files = true; | ||
option (udpa.annotations.file_migrate).move_to_package = | ||
"envoy.extensions.filters.network.jres_proxy.v3"; | ||
option (udpa.annotations.file_status).package_version_status = FROZEN; | ||
|
||
// [#protodoc-title: Jres Proxy] | ||
// Jres Proxy :ref:`configuration overview <config_network_filters_jres_proxy>`. | ||
// [#extension: envoy.filters.network.jres_proxy] | ||
|
||
// Jres Protocol types supported by Envoy. | ||
enum ProtocolType { | ||
// the default protocol. | ||
Jres = 0; | ||
} | ||
|
||
// Jres Serialization types supported by Envoy. | ||
enum SerializationType { | ||
// the default serialization protocol. | ||
Hessian2 = 0; | ||
} | ||
|
||
// [#next-free-field: 6] | ||
message JresProxy { | ||
// The human readable prefix to use when emitting statistics. | ||
string stat_prefix = 1 [(validate.rules).string = {min_bytes: 1}]; | ||
|
||
// Configure the protocol used. | ||
ProtocolType protocol_type = 2 [(validate.rules).enum = {defined_only: true}]; | ||
|
||
// Configure the serialization protocol used. | ||
SerializationType serialization_type = 3 [(validate.rules).enum = {defined_only: true}]; | ||
|
||
// The route table for the connection manager is static and is specified in this property. | ||
repeated RouteConfiguration route_config = 4; | ||
|
||
// A list of individual Jres filters that make up the filter chain for requests made to the | ||
// Jres proxy. Order matters as the filters are processed sequentially. For backwards | ||
// compatibility, if no jres_filters are specified, a default Jres router filter | ||
// (`envoy.filters.jres.router`) is used. | ||
repeated JresFilter jres_filters = 5; | ||
} | ||
|
||
// JresFilter configures a Jres filter. | ||
message JresFilter { | ||
// The name of the filter to instantiate. The name must match a supported | ||
// filter. | ||
string name = 1 [(validate.rules).string = {min_bytes: 1}]; | ||
|
||
// Filter specific configuration which depends on the filter being | ||
// instantiated. See the supported filters for further documentation. | ||
google.protobuf.Any config = 2; | ||
} |
105 changes: 105 additions & 0 deletions
105
api/envoy/config/filter/network/jres_proxy/v2alpha1/route.proto
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,105 @@ | ||
syntax = "proto3"; | ||
|
||
package envoy.config.filter.network.jres_proxy.v2alpha1; | ||
|
||
import "envoy/api/v2/route/route_components.proto"; | ||
import "envoy/type/matcher/string.proto"; | ||
import "envoy/type/range.proto"; | ||
|
||
import "udpa/annotations/migrate.proto"; | ||
import "udpa/annotations/status.proto"; | ||
import "validate/validate.proto"; | ||
|
||
option java_package = "io.envoyproxy.envoy.config.filter.network.jres_proxy.v2alpha1"; | ||
option java_outer_classname = "RouteProto"; | ||
option java_multiple_files = true; | ||
option (udpa.annotations.file_migrate).move_to_package = | ||
"envoy.extensions.filters.network.jres_proxy.v3"; | ||
option (udpa.annotations.file_status).package_version_status = FROZEN; | ||
|
||
// [#protodoc-title: Jres Proxy Route Configuration] | ||
// Jres Proxy :ref:`configuration overview <config_network_filters_jres_proxy>`. | ||
|
||
// [#next-free-field: 6] | ||
message RouteConfiguration { | ||
// The name of the route configuration. Reserved for future use in asynchronous route discovery. | ||
string name = 1; | ||
|
||
// The interface name of the service. | ||
string interface = 2; | ||
|
||
// Which group does the interface belong to. | ||
string group = 3; | ||
|
||
// The version number of the interface. | ||
string version = 4; | ||
|
||
// The list of routes that will be matched, in order, against incoming requests. The first route | ||
// that matches will be used. | ||
repeated Route routes = 5; | ||
} | ||
|
||
message Route { | ||
// Route matching parameters. | ||
RouteMatch match = 1 [(validate.rules).message = {required: true}]; | ||
|
||
// Route request to some upstream cluster. | ||
RouteAction route = 2 [(validate.rules).message = {required: true}]; | ||
} | ||
|
||
message RouteMatch { | ||
// Method level routing matching. | ||
MethodMatch method = 1; | ||
|
||
// Specifies a set of headers that the route should match on. The router will check the request’s | ||
// headers against all the specified headers in the route config. A match will happen if all the | ||
// headers in the route are present in the request with the same values (or based on presence if | ||
// the value field is not in the config). | ||
repeated api.v2.route.HeaderMatcher headers = 2; | ||
} | ||
|
||
message RouteAction { | ||
oneof cluster_specifier { | ||
option (validate.required) = true; | ||
|
||
// Indicates the upstream cluster to which the request should be routed. | ||
string cluster = 1; | ||
|
||
// Multiple upstream clusters can be specified for a given route. The | ||
// request is routed to one of the upstream clusters based on weights | ||
// assigned to each cluster. | ||
// Currently ClusterWeight only supports the name and weight fields. | ||
api.v2.route.WeightedCluster weighted_clusters = 2; | ||
} | ||
} | ||
|
||
message MethodMatch { | ||
// The parameter matching type. | ||
message ParameterMatchSpecifier { | ||
oneof parameter_match_specifier { | ||
// If specified, header match will be performed based on the value of the header. | ||
string exact_match = 3; | ||
|
||
// If specified, header match will be performed based on range. | ||
// The rule will match if the request header value is within this range. | ||
// The entire request header value must represent an integer in base 10 notation: consisting | ||
// of an optional plus or minus sign followed by a sequence of digits. The rule will not match | ||
// if the header value does not represent an integer. Match will fail for empty values, | ||
// floating point numbers or if only a subsequence of the header value is an integer. | ||
// | ||
// Examples: | ||
// | ||
// * For range [-10,0), route will match for header value -1, but not for 0, | ||
// "somestring", 10.9, "-1somestring" | ||
type.Int64Range range_match = 4; | ||
} | ||
} | ||
|
||
// The name of the method. | ||
type.matcher.StringMatcher name = 1; | ||
|
||
// Method parameter definition. | ||
// The key is the parameter index, starting from 0. | ||
// The value is the parameter matching type. | ||
map<uint32, ParameterMatchSpecifier> params_match = 2; | ||
} |
12 changes: 12 additions & 0 deletions
12
api/envoy/extensions/filters/network/jres_proxy/router/v3/BUILD
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. | ||
|
||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") | ||
|
||
licenses(["notice"]) # Apache 2 | ||
|
||
api_proto_package( | ||
deps = [ | ||
"//envoy/config/filter/jres/router/v2alpha1:pkg", | ||
"@com_github_cncf_udpa//udpa/annotations:pkg", | ||
], | ||
) |
19 changes: 19 additions & 0 deletions
19
api/envoy/extensions/filters/network/jres_proxy/router/v3/router.proto
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
syntax = "proto3"; | ||
|
||
package envoy.extensions.filters.network.jres_proxy.router.v3; | ||
|
||
import "udpa/annotations/status.proto"; | ||
import "udpa/annotations/versioning.proto"; | ||
|
||
option java_package = "io.envoyproxy.envoy.extensions.filters.network.jres_proxy.router.v3"; | ||
option java_outer_classname = "RouterProto"; | ||
option java_multiple_files = true; | ||
option (udpa.annotations.file_status).package_version_status = ACTIVE; | ||
|
||
// [#protodoc-title: Router] | ||
// Jres router :ref:`configuration overview <config_jres_filters_router>`. | ||
|
||
message Router { | ||
option (udpa.annotations.versioning).previous_message_type = | ||
"envoy.config.filter.jres.router.v2alpha1.Router"; | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
# DO NOT EDIT. This file is generated by tools/proto_format/proto_sync.py. | ||
|
||
load("@envoy_api//bazel:api_build_system.bzl", "api_proto_package") | ||
|
||
licenses(["notice"]) # Apache 2 | ||
|
||
api_proto_package( | ||
deps = [ | ||
"//envoy/config/filter/network/jres_proxy/v2alpha1:pkg", | ||
"//envoy/config/route/v3:pkg", | ||
"//envoy/type/matcher/v3:pkg", | ||
"//envoy/type/v3:pkg", | ||
"@com_github_cncf_udpa//udpa/annotations:pkg", | ||
], | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
Protocol buffer definitions for the Jres proxy. |
70 changes: 70 additions & 0 deletions
70
api/envoy/extensions/filters/network/jres_proxy/v3/jres_proxy.proto
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,70 @@ | ||
syntax = "proto3"; | ||
|
||
package envoy.extensions.filters.network.jres_proxy.v3; | ||
|
||
import "envoy/extensions/filters/network/jres_proxy/v3/route.proto"; | ||
|
||
import "google/protobuf/any.proto"; | ||
|
||
import "udpa/annotations/status.proto"; | ||
import "udpa/annotations/versioning.proto"; | ||
import "validate/validate.proto"; | ||
|
||
option java_package = "io.envoyproxy.envoy.extensions.filters.network.jres_proxy.v3"; | ||
option java_outer_classname = "JresProxyProto"; | ||
option java_multiple_files = true; | ||
option (udpa.annotations.file_status).package_version_status = ACTIVE; | ||
|
||
// [#protodoc-title: Jres Proxy] | ||
// Jres Proxy :ref:`configuration overview <config_network_filters_jres_proxy>`. | ||
// [#extension: envoy.filters.network.jres_proxy] | ||
|
||
// Jres Protocol types supported by Envoy. | ||
enum ProtocolType { | ||
// the default protocol. | ||
Jres = 0; | ||
} | ||
|
||
// Jres Serialization types supported by Envoy. | ||
enum SerializationType { | ||
// the default serialization protocol. | ||
Hessian2 = 0; | ||
} | ||
|
||
// [#next-free-field: 6] | ||
message JresProxy { | ||
option (udpa.annotations.versioning).previous_message_type = | ||
"envoy.config.filter.network.jres_proxy.v2alpha1.JresProxy"; | ||
|
||
// The human readable prefix to use when emitting statistics. | ||
string stat_prefix = 1 [(validate.rules).string = {min_len: 1}]; | ||
|
||
// Configure the protocol used. | ||
ProtocolType protocol_type = 2 [(validate.rules).enum = {defined_only: true}]; | ||
|
||
// Configure the serialization protocol used. | ||
SerializationType serialization_type = 3 [(validate.rules).enum = {defined_only: true}]; | ||
|
||
// The route table for the connection manager is static and is specified in this property. | ||
repeated RouteConfiguration route_config = 4; | ||
|
||
// A list of individual Jres filters that make up the filter chain for requests made to the | ||
// Jres proxy. Order matters as the filters are processed sequentially. For backwards | ||
// compatibility, if no jres_filters are specified, a default Jres router filter | ||
// (`envoy.filters.jres.router`) is used. | ||
repeated JresFilter jres_filters = 5; | ||
} | ||
|
||
// JresFilter configures a Jres filter. | ||
message JresFilter { | ||
option (udpa.annotations.versioning).previous_message_type = | ||
"envoy.config.filter.network.jres_proxy.v2alpha1.JresFilter"; | ||
|
||
// The name of the filter to instantiate. The name must match a supported | ||
// filter. | ||
string name = 1 [(validate.rules).string = {min_len: 1}]; | ||
|
||
// Filter specific configuration which depends on the filter being | ||
// instantiated. See the supported filters for further documentation. | ||
google.protobuf.Any config = 2; | ||
} |
Oops, something went wrong.