Skip to content

Commit

Permalink
Found new managed modules references (#633)
Browse files Browse the repository at this point in the history
New managed modules references found. Please review.

- [x] `envoyproxy/envoy` has updates, I have checked
#591
- [ ] `googlecloudplatform/bq-schema-api` has updates, I have checked
#592

Co-authored-by: unmultimedio <4431392+unmultimedio@users.noreply.github.com>
  • Loading branch information
app-token-modules[bot] and unmultimedio authored Jul 12, 2024
1 parent 03b583c commit 8e5ea5d
Show file tree
Hide file tree
Showing 7 changed files with 1,379 additions and 2 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
syntax = "proto3";

package envoy.extensions.formatter.metadata.v3;

import "udpa/annotations/status.proto";

option java_package = "io.envoyproxy.envoy.extensions.formatter.metadata.v3";
option java_outer_classname = "MetadataProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/formatter/metadata/v3;metadatav3";
option (udpa.annotations.file_status).package_version_status = ACTIVE;

// [#protodoc-title: Formatter extension for printing various types of metadata]
// [#extension: envoy.formatter.metadata]

// Metadata formatter extension implements METADATA command operator that
// prints all types of metadata. The first parameter taken by METADATA operator defines
// type of metadata. The following types of metadata are supported (case sensitive):
//
// * DYNAMIC
// * CLUSTER
// * ROUTE
// * UPSTREAM_HOST
// * LISTENER
// * VIRTUAL_HOST
//
// See :ref:`here <config_access_log>` for more information on access log configuration.

// %METADATA(TYPE:NAMESPACE:KEY):Z%
// :ref:`Metadata <envoy_v3_api_msg_config.core.v3.Metadata>` info,
// where TYPE is type of metadata (see above for supported types),
// NAMESPACE is the filter namespace used when setting the metadata, KEY is an optional
// lookup key in the namespace with the option of specifying nested keys separated by ':',
// and Z is an optional parameter denoting string truncation up to Z characters long.
// The data will be logged as a JSON string. For example, for the following ROUTE metadata:
//
// ``com.test.my_filter: {"test_key": "foo", "test_object": {"inner_key": "bar"}}``
//
// * %METADATA(ROUTE:com.test.my_filter)% will log: ``{"test_key": "foo", "test_object": {"inner_key": "bar"}}``
// * %METADATA(ROUTE:com.test.my_filter:test_key)% will log: ``foo``
// * %METADATA(ROUTE:com.test.my_filter:test_object)% will log: ``{"inner_key": "bar"}``
// * %METADATA(ROUTE:com.test.my_filter:test_object:inner_key)% will log: ``bar``
// * %METADATA(ROUTE:com.unknown_filter)% will log: ``-``
// * %METADATA(ROUTE:com.test.my_filter:unknown_key)% will log: ``-``
// * %METADATA(ROUTE:com.test.my_filter):25% will log (truncation at 25 characters): ``{"test_key": "foo", "test``
//
// .. note::
//
// For typed JSON logs, this operator renders a single value with string, numeric, or boolean type
// when the referenced key is a simple value. If the referenced key is a struct or list value, a
// JSON struct or list is rendered. Structs and lists may be nested. In any event, the maximum
// length is ignored.
//
// .. note::
//
// METADATA(DYNAMIC:NAMESPACE:KEY):Z is equivalent to :ref:`DYNAMIC_METADATA(NAMESPACE:KEY):Z<config_access_log_format_dynamic_metadata>`
// METADATA(CLUSTER:NAMESPACE:KEY):Z is equivalent to :ref:`CLUSTER_METADATA(NAMESPACE:KEY):Z<config_access_log_format_cluster_metadata>`
// METADATA(UPSTREAM_HOST:NAMESPACE:KEY):Z is equivalent to :ref:`UPSTREAM_METADATA(NAMESPACE:KEY):Z<config_access_log_format_upstream_host_metadata>`

message Metadata {
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
syntax = "proto3";

package envoy.extensions.http.custom_response.redirect_policy.v3;

import "envoy/config/core/v3/base.proto";
import "envoy/config/core/v3/extension.proto";
import "envoy/config/route/v3/route_components.proto";

import "google/protobuf/wrappers.proto";

import "xds/annotations/v3/status.proto";

import "udpa/annotations/status.proto";
import "validate/validate.proto";

option java_package = "io.envoyproxy.envoy.extensions.http.custom_response.redirect_policy.v3";
option java_outer_classname = "RedirectPolicyProto";
option java_multiple_files = true;
option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/http/custom_response/redirect_policy/v3;redirect_policyv3";
option (udpa.annotations.file_status).package_version_status = ACTIVE;
option (xds.annotations.v3.file_status).work_in_progress = true;

// [#protodoc-title: Redirect Policy for Custom Response]
// [#extension: envoy.http.custom_response.redirect_policy]

// Custom response policy to internally redirect the original response to a different
// upstream.
// [#next-free-field: 7]
message RedirectPolicy {
oneof redirect_action_specifier {
option (validate.required) = true;

// The Http URI to redirect the original request to, to get the custom
// response.
// It should be a full FQDN with protocol, host and path.
//
// Example:
//
// .. code-block:: yaml
//
// uri: https://www.mydomain.com/path/to/404.txt
//
string uri = 1 [(validate.rules).string = {min_len: 1}];

// Specify elements of the redirect url individually.
// Note: Do not specify the ``response_code`` field in ``redirect_action``, use
// ``status_code`` instead.
// The following fields in ``redirect_action`` are currently not supported,
// and specifying them will cause the config to be rejected:
// - ``prefix_rewrite``
// - ``regex_rewrite``
config.route.v3.RedirectAction redirect_action = 2;
}

// The new response status code if specified. This is used to override the
// status code of the response from the new upstream if it is not an error status.
google.protobuf.UInt32Value status_code = 3 [(validate.rules).uint32 = {lte: 999 gte: 200}];

// HTTP headers to add to the response. This allows the
// response policy to append, to add or to override headers of
// the original response for local body, or the custom response from the
// remote body, before it is sent to a downstream client.
// Note that these are not applied if the redirected response is an error
// response.
repeated config.core.v3.HeaderValueOption response_headers_to_add = 4
[(validate.rules).repeated = {max_items: 1000}];

// HTTP headers to add to the request before it is internally redirected.
repeated config.core.v3.HeaderValueOption request_headers_to_add = 5
[(validate.rules).repeated = {max_items: 1000}];

// Custom action to modify request headers before selection of the
// redirected route.
// [#comment: TODO(pradeepcrao) add an extension category.]
config.core.v3.TypedExtensionConfig modify_request_headers_action = 6;
}
Loading

0 comments on commit 8e5ea5d

Please sign in to comment.