diff --git a/BUILD b/BUILD index d3d06671ae7b5..8461de36f181f 100644 --- a/BUILD +++ b/BUILD @@ -1,7 +1,10 @@ +load("//bazel:envoy_build_system.bzl", "envoy_package") load("//tools/python:namespace.bzl", "envoy_py_namespace") licenses(["notice"]) # Apache 2 +envoy_package() + envoy_py_namespace() exports_files([ diff --git a/api/envoy/config/cluster/v3/cluster.proto b/api/envoy/config/cluster/v3/cluster.proto index 305656f7e03b8..b997852caf294 100644 --- a/api/envoy/config/cluster/v3/cluster.proto +++ b/api/envoy/config/cluster/v3/cluster.proto @@ -936,8 +936,8 @@ message Cluster { // which aggregates all of the DNS configuration in a single message. google.protobuf.Duration dns_refresh_rate = 16 [ deprecated = true, - (envoy.annotations.deprecated_at_minor_version) = "3.0", - (validate.rules).duration = {gt {nanos: 1000000}} + (validate.rules).duration = {gt {nanos: 1000000}}, + (envoy.annotations.deprecated_at_minor_version) = "3.0" ]; // DNS jitter can be optionally specified if the cluster type is either @@ -952,7 +952,7 @@ message Cluster { // This field is deprecated in favor of ``dns_config`` // which aggregates all of the DNS configuration in a single message. google.protobuf.Duration dns_jitter = 58 - [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; + [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; // If the DNS failure refresh rate is specified and the cluster type is either // :ref:`STRICT_DNS`, @@ -965,7 +965,7 @@ message Cluster { // This field is deprecated in favor of ``dns_config`` // which aggregates all of the DNS configuration in a single message. envoy.extensions.clusters.dns.v3.DnsConfig.RefreshRate dns_failure_refresh_rate = 44 - [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; + [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; // Optional configuration for setting cluster's DNS refresh rate. If the value is set to true, // cluster's DNS refresh rate will be set to resource record's TTL which comes from DNS @@ -973,15 +973,15 @@ message Cluster { // This field is deprecated in favor of ``dns_config`` // which aggregates all of the DNS configuration in a single message. bool respect_dns_ttl = 39 - [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; + [deprecated = true, (envoy.annotations.deprecated_at_minor_version) = "3.0"]; // The DNS IP address resolution policy. If this setting is not specified, the // value defaults to // :ref:`AUTO`. envoy.extensions.clusters.dns.v3.DnsConfig.DnsLookupFamily dns_lookup_family = 17 [ deprecated = true, - (envoy.annotations.deprecated_at_minor_version) = "3.0", - (validate.rules).enum = {defined_only: true} + (validate.rules).enum = {defined_only: true}, + (envoy.annotations.deprecated_at_minor_version) = "3.0" ]; // If DNS resolvers are specified and the cluster type is either diff --git a/api/envoy/extensions/clusters/dns/v3/cluster.proto b/api/envoy/extensions/clusters/dns/v3/cluster.proto index ad786e20ea530..ae652257b0c97 100644 --- a/api/envoy/extensions/clusters/dns/v3/cluster.proto +++ b/api/envoy/extensions/clusters/dns/v3/cluster.proto @@ -14,7 +14,7 @@ import "udpa/annotations/versioning.proto"; import "validate/validate.proto"; option java_package = "io.envoyproxy.envoy.extensions.clusters.dns.v3"; -option java_outer_classname = "DnsConfigProto"; +option java_outer_classname = "ClusterProto"; option java_multiple_files = true; option go_package = "github.com/envoyproxy/go-control-plane/envoy/extensions/clusters/dns/v3;dnsv3"; option (udpa.annotations.file_status).package_version_status = ACTIVE; @@ -76,7 +76,7 @@ message DnsConfig { // This value is the cluster’s DNS refresh rate. The value configured must be at least 1ms. // If this setting is not specified, the - // value defaults to 5000ms. + // value defaults to 5000ms. google.protobuf.Duration dns_refresh_rate = 1 [(validate.rules).duration = {gt {nanos: 1000000}}]; // this is the cluster’s DNS refresh rate when requests are failing. If this setting is diff --git a/api/envoy/extensions/common/dynamic_forward_proxy/v3/BUILD b/api/envoy/extensions/common/dynamic_forward_proxy/v3/BUILD index 9cc8ec4e1525e..23e700f178d90 100644 --- a/api/envoy/extensions/common/dynamic_forward_proxy/v3/BUILD +++ b/api/envoy/extensions/common/dynamic_forward_proxy/v3/BUILD @@ -7,7 +7,6 @@ licenses(["notice"]) # Apache 2 api_proto_package( deps = [ "//envoy/annotations:pkg", - "//envoy/config/cluster/v3:pkg", "//envoy/config/common/key_value/v3:pkg", "//envoy/config/core/v3:pkg", "//envoy/extensions/clusters/dns/v3:pkg", diff --git a/api/envoy/extensions/common/dynamic_forward_proxy/v3/dns_cache.proto b/api/envoy/extensions/common/dynamic_forward_proxy/v3/dns_cache.proto index e0ee342f8b14d..4413e64d3406d 100644 --- a/api/envoy/extensions/common/dynamic_forward_proxy/v3/dns_cache.proto +++ b/api/envoy/extensions/common/dynamic_forward_proxy/v3/dns_cache.proto @@ -2,7 +2,6 @@ syntax = "proto3"; package envoy.extensions.common.dynamic_forward_proxy.v3; -import "envoy/config/cluster/v3/cluster.proto"; import "envoy/config/common/key_value/v3/config.proto"; import "envoy/config/core/v3/address.proto"; import "envoy/config/core/v3/extension.proto"; @@ -54,7 +53,8 @@ message DnsCacheConfig { // likely build a "happy eyeballs" connection pool which would race the primary / fall back // address and return the one that wins. This same method could potentially also be used for // QUIC to TCP fall back.] - envoy.extensions.clusters.dns.v3.DnsConfig.DnsLookupFamily dns_lookup_family = 2 [(validate.rules).enum = {defined_only: true}]; + clusters.dns.v3.DnsConfig.DnsLookupFamily dns_lookup_family = 2 + [(validate.rules).enum = {defined_only: true}]; // The DNS refresh rate for unresolved DNS hosts. If not specified defaults to 60s. // diff --git a/source/common/common/dns_utils.h b/source/common/common/dns_utils.h index 416ef8e320e9c..77060bd21785e 100644 --- a/source/common/common/dns_utils.h +++ b/source/common/common/dns_utils.h @@ -10,6 +10,8 @@ namespace DnsUtils { * Utility function to get Dns from cluster/enum. */ Network::DnsLookupFamily +getDnsLookupFamilyFromCluster(const envoy::config::cluster::v3::Cluster& cluster); +Network::DnsLookupFamily getDnsLookupFamilyFromEnum(envoy::extensions::clusters::dns::v3::DnsConfig::DnsLookupFamily family); // Generates a list of InstanceConstSharedPtr from the DNS responses provided. diff --git a/source/extensions/clusters/strict_dns/strict_dns_cluster.h b/source/extensions/clusters/strict_dns/strict_dns_cluster.h index 91b4476fe1988..a6c2ad908912d 100644 --- a/source/extensions/clusters/strict_dns/strict_dns_cluster.h +++ b/source/extensions/clusters/strict_dns/strict_dns_cluster.h @@ -68,11 +68,11 @@ class StrictDnsClusterImpl : public BaseDynamicClusterImpl { const LocalInfo::LocalInfo& local_info_; Network::DnsResolverSharedPtr dns_resolver_; std::list resolve_targets_; - std::chrono::milliseconds dns_refresh_rate_ms_; - std::chrono::milliseconds dns_jitter_ms_; + const std::chrono::milliseconds dns_refresh_rate_ms_; + const std::chrono::milliseconds dns_jitter_ms_; BackOffStrategyPtr failure_backoff_strategy_; - bool respect_dns_ttl_; - Network::DnsLookupFamily dns_lookup_family_; + const bool respect_dns_ttl_; + const Network::DnsLookupFamily dns_lookup_family_; uint32_t overprovisioning_factor_; bool weighted_priority_health_; }; diff --git a/source/extensions/extensions_build_config.bzl b/source/extensions/extensions_build_config.bzl index 7d3cdbad71912..cfed293cf73cf 100644 --- a/source/extensions/extensions_build_config.bzl +++ b/source/extensions/extensions_build_config.bzl @@ -3,477 +3,433 @@ EXTENSIONS = { # # Access loggers # - - "envoy.access_loggers.file": "//source/extensions/access_loggers/file:config", - "envoy.access_loggers.extension_filters.cel": "//source/extensions/access_loggers/filters/cel:config", - "envoy.access_loggers.fluentd" : "//source/extensions/access_loggers/fluentd:config", - "envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/grpc:http_config", - "envoy.access_loggers.tcp_grpc": "//source/extensions/access_loggers/grpc:tcp_config", - "envoy.access_loggers.open_telemetry": "//source/extensions/access_loggers/open_telemetry:config", - "envoy.access_loggers.stdout": "//source/extensions/access_loggers/stream:config", - "envoy.access_loggers.stderr": "//source/extensions/access_loggers/stream:config", - "envoy.access_loggers.wasm": "//source/extensions/access_loggers/wasm:config", + "envoy.access_loggers.file": "//source/extensions/access_loggers/file:config", + "envoy.access_loggers.extension_filters.cel": "//source/extensions/access_loggers/filters/cel:config", + "envoy.access_loggers.fluentd": "//source/extensions/access_loggers/fluentd:config", + "envoy.access_loggers.http_grpc": "//source/extensions/access_loggers/grpc:http_config", + "envoy.access_loggers.tcp_grpc": "//source/extensions/access_loggers/grpc:tcp_config", + "envoy.access_loggers.open_telemetry": "//source/extensions/access_loggers/open_telemetry:config", + "envoy.access_loggers.stdout": "//source/extensions/access_loggers/stream:config", + "envoy.access_loggers.stderr": "//source/extensions/access_loggers/stream:config", + "envoy.access_loggers.wasm": "//source/extensions/access_loggers/wasm:config", # # Clusters # - - "envoy.clusters.aggregate": "//source/extensions/clusters/aggregate:cluster", - "envoy.clusters.dynamic_forward_proxy": "//source/extensions/clusters/dynamic_forward_proxy:cluster", - "envoy.clusters.eds": "//source/extensions/clusters/eds:eds_lib", - "envoy.clusters.redis": "//source/extensions/clusters/redis:redis_cluster", - "envoy.clusters.static": "//source/extensions/clusters/static:static_cluster_lib", - "envoy.clusters.strict_dns": "//source/extensions/clusters/strict_dns:strict_dns_cluster_lib", - "envoy.clusters.original_dst": "//source/extensions/clusters/original_dst:original_dst_cluster_lib", - "envoy.clusters.logical_dns": "//source/extensions/clusters/logical_dns:logical_dns_cluster_lib", + "envoy.clusters.aggregate": "//source/extensions/clusters/aggregate:cluster", + "envoy.clusters.dynamic_forward_proxy": "//source/extensions/clusters/dynamic_forward_proxy:cluster", + "envoy.clusters.eds": "//source/extensions/clusters/eds:eds_lib", + "envoy.clusters.redis": "//source/extensions/clusters/redis:redis_cluster", + "envoy.clusters.static": "//source/extensions/clusters/static:static_cluster_lib", + "envoy.clusters.strict_dns": "//source/extensions/clusters/strict_dns:strict_dns_cluster_lib", + "envoy.clusters.original_dst": "//source/extensions/clusters/original_dst:original_dst_cluster_lib", + "envoy.clusters.logical_dns": "//source/extensions/clusters/logical_dns:logical_dns_cluster_lib", # # Compression # - - "envoy.compression.gzip.compressor": "//source/extensions/compression/gzip/compressor:config", - "envoy.compression.gzip.decompressor": "//source/extensions/compression/gzip/decompressor:config", - "envoy.compression.brotli.compressor": "//source/extensions/compression/brotli/compressor:config", - "envoy.compression.brotli.decompressor": "//source/extensions/compression/brotli/decompressor:config", - "envoy.compression.zstd.compressor": "//source/extensions/compression/zstd/compressor:config", - "envoy.compression.zstd.decompressor": "//source/extensions/compression/zstd/decompressor:config", + "envoy.compression.gzip.compressor": "//source/extensions/compression/gzip/compressor:config", + "envoy.compression.gzip.decompressor": "//source/extensions/compression/gzip/decompressor:config", + "envoy.compression.brotli.compressor": "//source/extensions/compression/brotli/compressor:config", + "envoy.compression.brotli.decompressor": "//source/extensions/compression/brotli/decompressor:config", + "envoy.compression.zstd.compressor": "//source/extensions/compression/zstd/compressor:config", + "envoy.compression.zstd.decompressor": "//source/extensions/compression/zstd/decompressor:config", # # Config validators # - - "envoy.config.validators.minimum_clusters_validator": "//source/extensions/config/validators/minimum_clusters:config", + "envoy.config.validators.minimum_clusters_validator": "//source/extensions/config/validators/minimum_clusters:config", # # gRPC Credentials Plugins # - - "envoy.grpc_credentials.file_based_metadata": "//source/extensions/grpc_credentials/file_based_metadata:config", - "envoy.grpc_credentials.aws_iam": "//source/extensions/grpc_credentials/aws_iam:config", + "envoy.grpc_credentials.file_based_metadata": "//source/extensions/grpc_credentials/file_based_metadata:config", + "envoy.grpc_credentials.aws_iam": "//source/extensions/grpc_credentials/aws_iam:config", # # WASM # - - "envoy.bootstrap.wasm": "//source/extensions/bootstrap/wasm:config", + "envoy.bootstrap.wasm": "//source/extensions/bootstrap/wasm:config", # # Health checkers # - - "envoy.health_checkers.redis": "//source/extensions/health_checkers/redis:config", - "envoy.health_checkers.thrift": "//source/extensions/health_checkers/thrift:config", - "envoy.health_checkers.tcp": "//source/extensions/health_checkers/tcp:health_checker_lib", - "envoy.health_checkers.http": "//source/extensions/health_checkers/http:health_checker_lib", - "envoy.health_checkers.grpc": "//source/extensions/health_checkers/grpc:health_checker_lib", + "envoy.health_checkers.redis": "//source/extensions/health_checkers/redis:config", + "envoy.health_checkers.thrift": "//source/extensions/health_checkers/thrift:config", + "envoy.health_checkers.tcp": "//source/extensions/health_checkers/tcp:health_checker_lib", + "envoy.health_checkers.http": "//source/extensions/health_checkers/http:health_checker_lib", + "envoy.health_checkers.grpc": "//source/extensions/health_checkers/grpc:health_checker_lib", # # Health check event sinks # - - "envoy.health_check.event_sinks.file": "//source/extensions/health_check/event_sinks/file:file_sink_lib", + "envoy.health_check.event_sinks.file": "//source/extensions/health_check/event_sinks/file:file_sink_lib", # # Input Matchers # - - "envoy.matching.matchers.consistent_hashing": "//source/extensions/matching/input_matchers/consistent_hashing:config", - "envoy.matching.matchers.ip": "//source/extensions/matching/input_matchers/ip:config", - "envoy.matching.matchers.runtime_fraction": "//source/extensions/matching/input_matchers/runtime_fraction:config", - "envoy.matching.matchers.cel_matcher": "//source/extensions/matching/input_matchers/cel_matcher:config", - "envoy.matching.matchers.metadata_matcher": "//source/extensions/matching/input_matchers/metadata:config", + "envoy.matching.matchers.consistent_hashing": "//source/extensions/matching/input_matchers/consistent_hashing:config", + "envoy.matching.matchers.ip": "//source/extensions/matching/input_matchers/ip:config", + "envoy.matching.matchers.runtime_fraction": "//source/extensions/matching/input_matchers/runtime_fraction:config", + "envoy.matching.matchers.cel_matcher": "//source/extensions/matching/input_matchers/cel_matcher:config", + "envoy.matching.matchers.metadata_matcher": "//source/extensions/matching/input_matchers/metadata:config", # # Network Matchers # - - "envoy.matching.inputs.application_protocol": "//source/extensions/matching/network/application_protocol:config", + "envoy.matching.inputs.application_protocol": "//source/extensions/matching/network/application_protocol:config", # Ideally these would be split up. We'll do so if anyone cares. - "envoy.matching.inputs.destination_ip": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.destination_port": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.source_ip": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.source_port": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.direct_source_ip": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.source_type": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.server_name": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.transport_protocol": "//source/extensions/matching/network/common:inputs_lib", - "envoy.matching.inputs.filter_state": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.destination_ip": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.destination_port": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.source_ip": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.source_port": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.direct_source_ip": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.source_type": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.server_name": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.transport_protocol": "//source/extensions/matching/network/common:inputs_lib", + "envoy.matching.inputs.filter_state": "//source/extensions/matching/network/common:inputs_lib", # # Generic Inputs # - - "envoy.matching.common_inputs.environment_variable": "//source/extensions/matching/common_inputs/environment_variable:config", + "envoy.matching.common_inputs.environment_variable": "//source/extensions/matching/common_inputs/environment_variable:config", # # CEL Matching Input # - "envoy.matching.inputs.cel_data_input": "//source/extensions/matching/http/cel_input:cel_input_lib", + "envoy.matching.inputs.cel_data_input": "//source/extensions/matching/http/cel_input:cel_input_lib", # # Dynamic Metadata Matching Input # - "envoy.matching.inputs.dynamic_metadata": "//source/extensions/matching/http/metadata_input:metadata_input_lib", + "envoy.matching.inputs.dynamic_metadata": "//source/extensions/matching/http/metadata_input:metadata_input_lib", # # Matching actions # - - "envoy.matching.actions.format_string": "//source/extensions/matching/actions/format_string:config", + "envoy.matching.actions.format_string": "//source/extensions/matching/actions/format_string:config", # # StringMatchers # - "envoy.string_matcher.lua": "//source/extensions/string_matcher/lua:config", + "envoy.string_matcher.lua": "//source/extensions/string_matcher/lua:config", # # HTTP filters # - - "envoy.filters.http.adaptive_concurrency": "//source/extensions/filters/http/adaptive_concurrency:config", - "envoy.filters.http.admission_control": "//source/extensions/filters/http/admission_control:config", - "envoy.filters.http.alternate_protocols_cache": "//source/extensions/filters/http/alternate_protocols_cache:config", - "envoy.filters.http.aws_lambda": "//source/extensions/filters/http/aws_lambda:config", - "envoy.filters.http.aws_request_signing": "//source/extensions/filters/http/aws_request_signing:config", - "envoy.filters.http.bandwidth_limit": "//source/extensions/filters/http/bandwidth_limit:config", - "envoy.filters.http.basic_auth": "//source/extensions/filters/http/basic_auth:config", - "envoy.filters.http.buffer": "//source/extensions/filters/http/buffer:config", - "envoy.filters.http.cache": "//source/extensions/filters/http/cache:config", - "envoy.filters.http.cdn_loop": "//source/extensions/filters/http/cdn_loop:config", - "envoy.filters.http.compressor": "//source/extensions/filters/http/compressor:config", - "envoy.filters.http.cors": "//source/extensions/filters/http/cors:config", - "envoy.filters.http.composite": "//source/extensions/filters/http/composite:config", - "envoy.filters.http.connect_grpc_bridge": "//source/extensions/filters/http/connect_grpc_bridge:config", - "envoy.filters.http.credential_injector": "//source/extensions/filters/http/credential_injector:config", - "envoy.filters.http.csrf": "//source/extensions/filters/http/csrf:config", - "envoy.filters.http.custom_response": "//source/extensions/filters/http/custom_response:factory", - "envoy.filters.http.decompressor": "//source/extensions/filters/http/decompressor:config", - "envoy.filters.http.dynamic_forward_proxy": "//source/extensions/filters/http/dynamic_forward_proxy:config", - "envoy.filters.http.ext_authz": "//source/extensions/filters/http/ext_authz:config", - "envoy.filters.http.ext_proc": "//source/extensions/filters/http/ext_proc:config", - "envoy.filters.http.fault": "//source/extensions/filters/http/fault:config", - "envoy.filters.http.file_system_buffer": "//source/extensions/filters/http/file_system_buffer:config", - "envoy.filters.http.gcp_authn": "//source/extensions/filters/http/gcp_authn:config", - "envoy.filters.http.geoip": "//source/extensions/filters/http/geoip:config", - "envoy.filters.http.grpc_field_extraction": "//source/extensions/filters/http/grpc_field_extraction:config", - "envoy.filters.http.grpc_http1_bridge": "//source/extensions/filters/http/grpc_http1_bridge:config", - "envoy.filters.http.grpc_http1_reverse_bridge": "//source/extensions/filters/http/grpc_http1_reverse_bridge:config", - "envoy.filters.http.grpc_json_transcoder": "//source/extensions/filters/http/grpc_json_transcoder:config", - "envoy.filters.http.grpc_stats": "//source/extensions/filters/http/grpc_stats:config", - "envoy.filters.http.grpc_web": "//source/extensions/filters/http/grpc_web:config", - "envoy.filters.http.header_to_metadata": "//source/extensions/filters/http/header_to_metadata:config", - "envoy.filters.http.health_check": "//source/extensions/filters/http/health_check:config", - "envoy.filters.http.ip_tagging": "//source/extensions/filters/http/ip_tagging:config", - "envoy.filters.http.json_to_metadata": "//source/extensions/filters/http/json_to_metadata:config", - "envoy.filters.http.jwt_authn": "//source/extensions/filters/http/jwt_authn:config", - "envoy.filters.http.rate_limit_quota": "//source/extensions/filters/http/rate_limit_quota:config", + "envoy.filters.http.adaptive_concurrency": "//source/extensions/filters/http/adaptive_concurrency:config", + "envoy.filters.http.admission_control": "//source/extensions/filters/http/admission_control:config", + "envoy.filters.http.alternate_protocols_cache": "//source/extensions/filters/http/alternate_protocols_cache:config", + "envoy.filters.http.aws_lambda": "//source/extensions/filters/http/aws_lambda:config", + "envoy.filters.http.aws_request_signing": "//source/extensions/filters/http/aws_request_signing:config", + "envoy.filters.http.bandwidth_limit": "//source/extensions/filters/http/bandwidth_limit:config", + "envoy.filters.http.basic_auth": "//source/extensions/filters/http/basic_auth:config", + "envoy.filters.http.buffer": "//source/extensions/filters/http/buffer:config", + "envoy.filters.http.cache": "//source/extensions/filters/http/cache:config", + "envoy.filters.http.cdn_loop": "//source/extensions/filters/http/cdn_loop:config", + "envoy.filters.http.compressor": "//source/extensions/filters/http/compressor:config", + "envoy.filters.http.cors": "//source/extensions/filters/http/cors:config", + "envoy.filters.http.composite": "//source/extensions/filters/http/composite:config", + "envoy.filters.http.connect_grpc_bridge": "//source/extensions/filters/http/connect_grpc_bridge:config", + "envoy.filters.http.credential_injector": "//source/extensions/filters/http/credential_injector:config", + "envoy.filters.http.csrf": "//source/extensions/filters/http/csrf:config", + "envoy.filters.http.custom_response": "//source/extensions/filters/http/custom_response:factory", + "envoy.filters.http.decompressor": "//source/extensions/filters/http/decompressor:config", + "envoy.filters.http.dynamic_forward_proxy": "//source/extensions/filters/http/dynamic_forward_proxy:config", + "envoy.filters.http.ext_authz": "//source/extensions/filters/http/ext_authz:config", + "envoy.filters.http.ext_proc": "//source/extensions/filters/http/ext_proc:config", + "envoy.filters.http.fault": "//source/extensions/filters/http/fault:config", + "envoy.filters.http.file_system_buffer": "//source/extensions/filters/http/file_system_buffer:config", + "envoy.filters.http.gcp_authn": "//source/extensions/filters/http/gcp_authn:config", + "envoy.filters.http.geoip": "//source/extensions/filters/http/geoip:config", + "envoy.filters.http.grpc_field_extraction": "//source/extensions/filters/http/grpc_field_extraction:config", + "envoy.filters.http.grpc_http1_bridge": "//source/extensions/filters/http/grpc_http1_bridge:config", + "envoy.filters.http.grpc_http1_reverse_bridge": "//source/extensions/filters/http/grpc_http1_reverse_bridge:config", + "envoy.filters.http.grpc_json_transcoder": "//source/extensions/filters/http/grpc_json_transcoder:config", + "envoy.filters.http.grpc_stats": "//source/extensions/filters/http/grpc_stats:config", + "envoy.filters.http.grpc_web": "//source/extensions/filters/http/grpc_web:config", + "envoy.filters.http.header_to_metadata": "//source/extensions/filters/http/header_to_metadata:config", + "envoy.filters.http.health_check": "//source/extensions/filters/http/health_check:config", + "envoy.filters.http.ip_tagging": "//source/extensions/filters/http/ip_tagging:config", + "envoy.filters.http.json_to_metadata": "//source/extensions/filters/http/json_to_metadata:config", + "envoy.filters.http.jwt_authn": "//source/extensions/filters/http/jwt_authn:config", + "envoy.filters.http.rate_limit_quota": "//source/extensions/filters/http/rate_limit_quota:config", # Disabled by default. kill_request is not built into most prebuilt images. # For instructions for building with disabled-by-default filters enabled, see # https://github.com/envoyproxy/envoy/blob/main/bazel/README.md#enabling-and-disabling-extensions - "envoy.filters.http.kill_request": "//source/extensions/filters/http/kill_request:kill_request_config", - "envoy.filters.http.local_ratelimit": "//source/extensions/filters/http/local_ratelimit:config", - "envoy.filters.http.lua": "//source/extensions/filters/http/lua:config", - "envoy.filters.http.oauth2": "//source/extensions/filters/http/oauth2:config", - "envoy.filters.http.on_demand": "//source/extensions/filters/http/on_demand:config", - "envoy.filters.http.original_src": "//source/extensions/filters/http/original_src:config", - "envoy.filters.http.proto_message_extraction": "//source/extensions/filters/http/proto_message_extraction:config", - "envoy.filters.http.ratelimit": "//source/extensions/filters/http/ratelimit:config", - "envoy.filters.http.rbac": "//source/extensions/filters/http/rbac:config", - "envoy.filters.http.router": "//source/extensions/filters/http/router:config", - "envoy.filters.http.set_filter_state": "//source/extensions/filters/http/set_filter_state:config", - "envoy.filters.http.set_metadata": "//source/extensions/filters/http/set_metadata:config", - "envoy.filters.http.tap": "//source/extensions/filters/http/tap:config", - "envoy.filters.http.thrift_to_metadata": "//source/extensions/filters/http/thrift_to_metadata:config", - "envoy.filters.http.wasm": "//source/extensions/filters/http/wasm:config", - "envoy.filters.http.stateful_session": "//source/extensions/filters/http/stateful_session:config", - "envoy.filters.http.header_mutation": "//source/extensions/filters/http/header_mutation:config", + "envoy.filters.http.kill_request": "//source/extensions/filters/http/kill_request:kill_request_config", + "envoy.filters.http.local_ratelimit": "//source/extensions/filters/http/local_ratelimit:config", + "envoy.filters.http.lua": "//source/extensions/filters/http/lua:config", + "envoy.filters.http.oauth2": "//source/extensions/filters/http/oauth2:config", + "envoy.filters.http.on_demand": "//source/extensions/filters/http/on_demand:config", + "envoy.filters.http.original_src": "//source/extensions/filters/http/original_src:config", + "envoy.filters.http.proto_message_extraction": "//source/extensions/filters/http/proto_message_extraction:config", + "envoy.filters.http.ratelimit": "//source/extensions/filters/http/ratelimit:config", + "envoy.filters.http.rbac": "//source/extensions/filters/http/rbac:config", + "envoy.filters.http.router": "//source/extensions/filters/http/router:config", + "envoy.filters.http.set_filter_state": "//source/extensions/filters/http/set_filter_state:config", + "envoy.filters.http.set_metadata": "//source/extensions/filters/http/set_metadata:config", + "envoy.filters.http.tap": "//source/extensions/filters/http/tap:config", + "envoy.filters.http.thrift_to_metadata": "//source/extensions/filters/http/thrift_to_metadata:config", + "envoy.filters.http.wasm": "//source/extensions/filters/http/wasm:config", + "envoy.filters.http.stateful_session": "//source/extensions/filters/http/stateful_session:config", + "envoy.filters.http.header_mutation": "//source/extensions/filters/http/header_mutation:config", # # Listener filters # - - "envoy.filters.listener.http_inspector": "//source/extensions/filters/listener/http_inspector:config", - "envoy.filters.listener.local_ratelimit": "//source/extensions/filters/listener/local_ratelimit:config", + "envoy.filters.listener.http_inspector": "//source/extensions/filters/listener/http_inspector:config", + "envoy.filters.listener.local_ratelimit": "//source/extensions/filters/listener/local_ratelimit:config", # NOTE: The original_dst filter is implicitly loaded if original_dst functionality is # configured on the listener. Do not remove it in that case or configs will fail to load. - "envoy.filters.listener.original_dst": "//source/extensions/filters/listener/original_dst:config", - "envoy.filters.listener.original_src": "//source/extensions/filters/listener/original_src:config", + "envoy.filters.listener.original_dst": "//source/extensions/filters/listener/original_dst:config", + "envoy.filters.listener.original_src": "//source/extensions/filters/listener/original_src:config", # NOTE: The proxy_protocol filter is implicitly loaded if proxy_protocol functionality is # configured on the listener. Do not remove it in that case or configs will fail to load. - "envoy.filters.listener.proxy_protocol": "//source/extensions/filters/listener/proxy_protocol:config", - "envoy.filters.listener.tls_inspector": "//source/extensions/filters/listener/tls_inspector:config", + "envoy.filters.listener.proxy_protocol": "//source/extensions/filters/listener/proxy_protocol:config", + "envoy.filters.listener.tls_inspector": "//source/extensions/filters/listener/tls_inspector:config", # # Network filters # - - "envoy.filters.network.connection_limit": "//source/extensions/filters/network/connection_limit:config", - "envoy.filters.network.direct_response": "//source/extensions/filters/network/direct_response:config", - "envoy.filters.network.dubbo_proxy": "//source/extensions/filters/network/dubbo_proxy:config", - "envoy.filters.network.echo": "//source/extensions/filters/network/echo:config", - "envoy.filters.network.ext_authz": "//source/extensions/filters/network/ext_authz:config", - "envoy.filters.network.http_connection_manager": "//source/extensions/filters/network/http_connection_manager:config", - "envoy.filters.network.local_ratelimit": "//source/extensions/filters/network/local_ratelimit:config", - "envoy.filters.network.mongo_proxy": "//source/extensions/filters/network/mongo_proxy:config", - "envoy.filters.network.ratelimit": "//source/extensions/filters/network/ratelimit:config", - "envoy.filters.network.rbac": "//source/extensions/filters/network/rbac:config", - "envoy.filters.network.redis_proxy": "//source/extensions/filters/network/redis_proxy:config", - "envoy.filters.network.tcp_proxy": "//source/extensions/filters/network/tcp_proxy:config", - "envoy.filters.network.thrift_proxy": "//source/extensions/filters/network/thrift_proxy:config", - "envoy.filters.network.set_filter_state": "//source/extensions/filters/network/set_filter_state:config", - "envoy.filters.network.sni_cluster": "//source/extensions/filters/network/sni_cluster:config", - "envoy.filters.network.sni_dynamic_forward_proxy": "//source/extensions/filters/network/sni_dynamic_forward_proxy:config", - "envoy.filters.network.wasm": "//source/extensions/filters/network/wasm:config", - "envoy.filters.network.zookeeper_proxy": "//source/extensions/filters/network/zookeeper_proxy:config", - "envoy.filters.network.generic_proxy": "//source/extensions/filters/network/generic_proxy:config", + "envoy.filters.network.connection_limit": "//source/extensions/filters/network/connection_limit:config", + "envoy.filters.network.direct_response": "//source/extensions/filters/network/direct_response:config", + "envoy.filters.network.dubbo_proxy": "//source/extensions/filters/network/dubbo_proxy:config", + "envoy.filters.network.echo": "//source/extensions/filters/network/echo:config", + "envoy.filters.network.ext_authz": "//source/extensions/filters/network/ext_authz:config", + "envoy.filters.network.http_connection_manager": "//source/extensions/filters/network/http_connection_manager:config", + "envoy.filters.network.local_ratelimit": "//source/extensions/filters/network/local_ratelimit:config", + "envoy.filters.network.mongo_proxy": "//source/extensions/filters/network/mongo_proxy:config", + "envoy.filters.network.ratelimit": "//source/extensions/filters/network/ratelimit:config", + "envoy.filters.network.rbac": "//source/extensions/filters/network/rbac:config", + "envoy.filters.network.redis_proxy": "//source/extensions/filters/network/redis_proxy:config", + "envoy.filters.network.tcp_proxy": "//source/extensions/filters/network/tcp_proxy:config", + "envoy.filters.network.thrift_proxy": "//source/extensions/filters/network/thrift_proxy:config", + "envoy.filters.network.set_filter_state": "//source/extensions/filters/network/set_filter_state:config", + "envoy.filters.network.sni_cluster": "//source/extensions/filters/network/sni_cluster:config", + "envoy.filters.network.sni_dynamic_forward_proxy": "//source/extensions/filters/network/sni_dynamic_forward_proxy:config", + "envoy.filters.network.wasm": "//source/extensions/filters/network/wasm:config", + "envoy.filters.network.zookeeper_proxy": "//source/extensions/filters/network/zookeeper_proxy:config", + "envoy.filters.network.generic_proxy": "//source/extensions/filters/network/generic_proxy:config", # # UDP filters # - - "envoy.filters.udp.dns_filter": "//source/extensions/filters/udp/dns_filter:config", - "envoy.filters.udp_listener.udp_proxy": "//source/extensions/filters/udp/udp_proxy:config", + "envoy.filters.udp.dns_filter": "//source/extensions/filters/udp/dns_filter:config", + "envoy.filters.udp_listener.udp_proxy": "//source/extensions/filters/udp/udp_proxy:config", # # UDP Session filters # - - "envoy.filters.udp.session.http_capsule": "//source/extensions/filters/udp/udp_proxy/session_filters/http_capsule:config", - "envoy.filters.udp.session.dynamic_forward_proxy": "//source/extensions/filters/udp/udp_proxy/session_filters/dynamic_forward_proxy:config", + "envoy.filters.udp.session.http_capsule": "//source/extensions/filters/udp/udp_proxy/session_filters/http_capsule:config", + "envoy.filters.udp.session.dynamic_forward_proxy": "//source/extensions/filters/udp/udp_proxy/session_filters/dynamic_forward_proxy:config", # # Resource monitors # - - "envoy.resource_monitors.fixed_heap": "//source/extensions/resource_monitors/fixed_heap:config", - "envoy.resource_monitors.injected_resource": "//source/extensions/resource_monitors/injected_resource:config", - "envoy.resource_monitors.global_downstream_max_connections": "//source/extensions/resource_monitors/downstream_connections:config", - "envoy.resource_monitors.cpu_utilization": "//source/extensions/resource_monitors/cpu_utilization:config", + "envoy.resource_monitors.fixed_heap": "//source/extensions/resource_monitors/fixed_heap:config", + "envoy.resource_monitors.injected_resource": "//source/extensions/resource_monitors/injected_resource:config", + "envoy.resource_monitors.global_downstream_max_connections": "//source/extensions/resource_monitors/downstream_connections:config", + "envoy.resource_monitors.cpu_utilization": "//source/extensions/resource_monitors/cpu_utilization:config", # # Stat sinks # - - "envoy.stat_sinks.dog_statsd": "//source/extensions/stat_sinks/dog_statsd:config", - "envoy.stat_sinks.graphite_statsd": "//source/extensions/stat_sinks/graphite_statsd:config", - "envoy.stat_sinks.hystrix": "//source/extensions/stat_sinks/hystrix:config", - "envoy.stat_sinks.metrics_service": "//source/extensions/stat_sinks/metrics_service:config", - "envoy.stat_sinks.open_telemetry": "//source/extensions/stat_sinks/open_telemetry:config", - "envoy.stat_sinks.statsd": "//source/extensions/stat_sinks/statsd:config", - "envoy.stat_sinks.wasm": "//source/extensions/stat_sinks/wasm:config", + "envoy.stat_sinks.dog_statsd": "//source/extensions/stat_sinks/dog_statsd:config", + "envoy.stat_sinks.graphite_statsd": "//source/extensions/stat_sinks/graphite_statsd:config", + "envoy.stat_sinks.hystrix": "//source/extensions/stat_sinks/hystrix:config", + "envoy.stat_sinks.metrics_service": "//source/extensions/stat_sinks/metrics_service:config", + "envoy.stat_sinks.open_telemetry": "//source/extensions/stat_sinks/open_telemetry:config", + "envoy.stat_sinks.statsd": "//source/extensions/stat_sinks/statsd:config", + "envoy.stat_sinks.wasm": "//source/extensions/stat_sinks/wasm:config", # # Thrift filters # - - "envoy.filters.thrift.router": "//source/extensions/filters/network/thrift_proxy/router:config", - "envoy.filters.thrift.header_to_metadata": "//source/extensions/filters/network/thrift_proxy/filters/header_to_metadata:config", - "envoy.filters.thrift.payload_to_metadata": "//source/extensions/filters/network/thrift_proxy/filters/payload_to_metadata:config", - "envoy.filters.thrift.rate_limit": "//source/extensions/filters/network/thrift_proxy/filters/ratelimit:config", + "envoy.filters.thrift.router": "//source/extensions/filters/network/thrift_proxy/router:config", + "envoy.filters.thrift.header_to_metadata": "//source/extensions/filters/network/thrift_proxy/filters/header_to_metadata:config", + "envoy.filters.thrift.payload_to_metadata": "//source/extensions/filters/network/thrift_proxy/filters/payload_to_metadata:config", + "envoy.filters.thrift.rate_limit": "//source/extensions/filters/network/thrift_proxy/filters/ratelimit:config", # # Tracers # - - "envoy.tracers.datadog": "//source/extensions/tracers/datadog:config", - "envoy.tracers.zipkin": "//source/extensions/tracers/zipkin:config", - "envoy.tracers.opencensus": "//source/extensions/tracers/opencensus:config", - "envoy.tracers.xray": "//source/extensions/tracers/xray:config", - "envoy.tracers.skywalking": "//source/extensions/tracers/skywalking:config", - "envoy.tracers.opentelemetry": "//source/extensions/tracers/opentelemetry:config", + "envoy.tracers.datadog": "//source/extensions/tracers/datadog:config", + "envoy.tracers.zipkin": "//source/extensions/tracers/zipkin:config", + "envoy.tracers.opencensus": "//source/extensions/tracers/opencensus:config", + "envoy.tracers.xray": "//source/extensions/tracers/xray:config", + "envoy.tracers.skywalking": "//source/extensions/tracers/skywalking:config", + "envoy.tracers.opentelemetry": "//source/extensions/tracers/opentelemetry:config", # # OpenTelemetry Resource Detectors # - - "envoy.tracers.opentelemetry.resource_detectors.environment": "//source/extensions/tracers/opentelemetry/resource_detectors/environment:config", - "envoy.tracers.opentelemetry.resource_detectors.dynatrace": "//source/extensions/tracers/opentelemetry/resource_detectors/dynatrace:config", - "envoy.tracers.opentelemetry.resource_detectors.static_config": "//source/extensions/tracers/opentelemetry/resource_detectors/static:config", + "envoy.tracers.opentelemetry.resource_detectors.environment": "//source/extensions/tracers/opentelemetry/resource_detectors/environment:config", + "envoy.tracers.opentelemetry.resource_detectors.dynatrace": "//source/extensions/tracers/opentelemetry/resource_detectors/dynatrace:config", + "envoy.tracers.opentelemetry.resource_detectors.static_config": "//source/extensions/tracers/opentelemetry/resource_detectors/static:config", # # OpenTelemetry tracer samplers # - - "envoy.tracers.opentelemetry.samplers.always_on": "//source/extensions/tracers/opentelemetry/samplers/always_on:config", - "envoy.tracers.opentelemetry.samplers.dynatrace": "//source/extensions/tracers/opentelemetry/samplers/dynatrace:config", + "envoy.tracers.opentelemetry.samplers.always_on": "//source/extensions/tracers/opentelemetry/samplers/always_on:config", + "envoy.tracers.opentelemetry.samplers.dynatrace": "//source/extensions/tracers/opentelemetry/samplers/dynatrace:config", # # Transport sockets # - - "envoy.transport_sockets.alts": "//source/extensions/transport_sockets/alts:config", - "envoy.transport_sockets.http_11_proxy": "//source/extensions/transport_sockets/http_11_proxy:upstream_config", - "envoy.transport_sockets.upstream_proxy_protocol": "//source/extensions/transport_sockets/proxy_protocol:upstream_config", - "envoy.transport_sockets.raw_buffer": "//source/extensions/transport_sockets/raw_buffer:config", - "envoy.transport_sockets.tap": "//source/extensions/transport_sockets/tap:config", - "envoy.transport_sockets.starttls": "//source/extensions/transport_sockets/starttls:config", - "envoy.transport_sockets.tcp_stats": "//source/extensions/transport_sockets/tcp_stats:config", - "envoy.transport_sockets.tls": "//source/extensions/transport_sockets/tls:config", - "envoy.transport_sockets.internal_upstream": "//source/extensions/transport_sockets/internal_upstream:config", + "envoy.transport_sockets.alts": "//source/extensions/transport_sockets/alts:config", + "envoy.transport_sockets.http_11_proxy": "//source/extensions/transport_sockets/http_11_proxy:upstream_config", + "envoy.transport_sockets.upstream_proxy_protocol": "//source/extensions/transport_sockets/proxy_protocol:upstream_config", + "envoy.transport_sockets.raw_buffer": "//source/extensions/transport_sockets/raw_buffer:config", + "envoy.transport_sockets.tap": "//source/extensions/transport_sockets/tap:config", + "envoy.transport_sockets.starttls": "//source/extensions/transport_sockets/starttls:config", + "envoy.transport_sockets.tcp_stats": "//source/extensions/transport_sockets/tcp_stats:config", + "envoy.transport_sockets.tls": "//source/extensions/transport_sockets/tls:config", + "envoy.transport_sockets.internal_upstream": "//source/extensions/transport_sockets/internal_upstream:config", # # Retry host predicates # - - "envoy.retry_host_predicates.previous_hosts": "//source/extensions/retry/host/previous_hosts:config", - "envoy.retry_host_predicates.omit_canary_hosts": "//source/extensions/retry/host/omit_canary_hosts:config", - "envoy.retry_host_predicates.omit_host_metadata": "//source/extensions/retry/host/omit_host_metadata:config", + "envoy.retry_host_predicates.previous_hosts": "//source/extensions/retry/host/previous_hosts:config", + "envoy.retry_host_predicates.omit_canary_hosts": "//source/extensions/retry/host/omit_canary_hosts:config", + "envoy.retry_host_predicates.omit_host_metadata": "//source/extensions/retry/host/omit_host_metadata:config", # # Retry priorities # - - "envoy.retry_priorities.previous_priorities": "//source/extensions/retry/priority/previous_priorities:config", + "envoy.retry_priorities.previous_priorities": "//source/extensions/retry/priority/previous_priorities:config", # # CacheFilter plugins # "envoy.extensions.http.cache.file_system_http_cache": "//source/extensions/http/cache/file_system_http_cache:config", - "envoy.extensions.http.cache.simple": "//source/extensions/http/cache/simple_http_cache:config", + "envoy.extensions.http.cache.simple": "//source/extensions/http/cache/simple_http_cache:config", # # Internal redirect predicates # - "envoy.internal_redirect_predicates.allow_listed_routes": "//source/extensions/internal_redirect/allow_listed_routes:config", - "envoy.internal_redirect_predicates.previous_routes": "//source/extensions/internal_redirect/previous_routes:config", - "envoy.internal_redirect_predicates.safe_cross_scheme": "//source/extensions/internal_redirect/safe_cross_scheme:config", + "envoy.internal_redirect_predicates.previous_routes": "//source/extensions/internal_redirect/previous_routes:config", + "envoy.internal_redirect_predicates.safe_cross_scheme": "//source/extensions/internal_redirect/safe_cross_scheme:config", # # Http Upstreams (excepting envoy.upstreams.http.generic which is hard-coded into the build so not registered here) # - - "envoy.upstreams.http.http": "//source/extensions/upstreams/http/http:config", - "envoy.upstreams.http.tcp": "//source/extensions/upstreams/http/tcp:config", - "envoy.upstreams.http.udp": "//source/extensions/upstreams/http/udp:config", + "envoy.upstreams.http.http": "//source/extensions/upstreams/http/http:config", + "envoy.upstreams.http.tcp": "//source/extensions/upstreams/http/tcp:config", + "envoy.upstreams.http.udp": "//source/extensions/upstreams/http/udp:config", # # Watchdog actions # - - "envoy.watchdog.profile_action": "//source/extensions/watchdog/profile_action:config", + "envoy.watchdog.profile_action": "//source/extensions/watchdog/profile_action:config", # # WebAssembly runtimes # - - "envoy.wasm.runtime.null": "//source/extensions/wasm_runtime/null:config", - "envoy.wasm.runtime.v8": "//source/extensions/wasm_runtime/v8:config", - "envoy.wasm.runtime.wamr": "//source/extensions/wasm_runtime/wamr:config", - "envoy.wasm.runtime.wasmtime": "//source/extensions/wasm_runtime/wasmtime:config", + "envoy.wasm.runtime.null": "//source/extensions/wasm_runtime/null:config", + "envoy.wasm.runtime.v8": "//source/extensions/wasm_runtime/v8:config", + "envoy.wasm.runtime.wamr": "//source/extensions/wasm_runtime/wamr:config", + "envoy.wasm.runtime.wasmtime": "//source/extensions/wasm_runtime/wasmtime:config", # # Rate limit descriptors # - - "envoy.rate_limit_descriptors.expr": "//source/extensions/rate_limit_descriptors/expr:config", + "envoy.rate_limit_descriptors.expr": "//source/extensions/rate_limit_descriptors/expr:config", # # IO socket # - - "envoy.io_socket.user_space": "//source/extensions/io_socket/user_space:config", - "envoy.bootstrap.internal_listener": "//source/extensions/bootstrap/internal_listener:config", + "envoy.io_socket.user_space": "//source/extensions/io_socket/user_space:config", + "envoy.bootstrap.internal_listener": "//source/extensions/bootstrap/internal_listener:config", # # TLS peer certification validators # - - "envoy.tls.cert_validator.spiffe": "//source/extensions/transport_sockets/tls/cert_validator/spiffe:config", + "envoy.tls.cert_validator.spiffe": "//source/extensions/transport_sockets/tls/cert_validator/spiffe:config", # # HTTP header formatters # - - "envoy.http.stateful_header_formatters.preserve_case": "//source/extensions/http/header_formatters/preserve_case:config", + "envoy.http.stateful_header_formatters.preserve_case": "//source/extensions/http/header_formatters/preserve_case:config", # # Original IP detection # - - "envoy.http.original_ip_detection.custom_header": "//source/extensions/http/original_ip_detection/custom_header:config", - "envoy.http.original_ip_detection.xff": "//source/extensions/http/original_ip_detection/xff:config", + "envoy.http.original_ip_detection.custom_header": "//source/extensions/http/original_ip_detection/custom_header:config", + "envoy.http.original_ip_detection.xff": "//source/extensions/http/original_ip_detection/xff:config", # # Stateful session # - - "envoy.http.stateful_session.cookie": "//source/extensions/http/stateful_session/cookie:config", - "envoy.http.stateful_session.header": "//source/extensions/http/stateful_session/header:config", + "envoy.http.stateful_session.cookie": "//source/extensions/http/stateful_session/cookie:config", + "envoy.http.stateful_session.header": "//source/extensions/http/stateful_session/header:config", # # Custom response policies # - - "envoy.http.custom_response.redirect_policy": "//source/extensions/http/custom_response/redirect_policy:redirect_policy_lib", - "envoy.http.custom_response.local_response_policy": "//source/extensions/http/custom_response/local_response_policy:local_response_policy_lib", + "envoy.http.custom_response.redirect_policy": "//source/extensions/http/custom_response/redirect_policy:redirect_policy_lib", + "envoy.http.custom_response.local_response_policy": "//source/extensions/http/custom_response/local_response_policy:local_response_policy_lib", # # Injected credentials # - - "envoy.http.injected_credentials.generic": "//source/extensions/http/injected_credentials/generic:config", - "envoy.http.injected_credentials.oauth2": "//source/extensions/http/injected_credentials/oauth2:config", + "envoy.http.injected_credentials.generic": "//source/extensions/http/injected_credentials/generic:config", + "envoy.http.injected_credentials.oauth2": "//source/extensions/http/injected_credentials/oauth2:config", # # QUIC extensions # - "envoy.quic.deterministic_connection_id_generator": "//source/extensions/quic/connection_id_generator:envoy_deterministic_connection_id_generator_config", - "envoy.quic.crypto_stream.server.quiche": "//source/extensions/quic/crypto_stream:envoy_quic_default_crypto_server_stream", - "envoy.quic.proof_source.filter_chain": "//source/extensions/quic/proof_source:envoy_quic_default_proof_source", - "envoy.quic.server_preferred_address.fixed": "//source/extensions/quic/server_preferred_address:fixed_server_preferred_address_config_factory_config", - "envoy.quic.server_preferred_address.datasource": "//source/extensions/quic/server_preferred_address:datasource_server_preferred_address_config_factory_config", - "envoy.quic.connection_debug_visitor.basic": "//source/extensions/quic/connection_debug_visitor:envoy_quic_connection_debug_visitor_basic", + "envoy.quic.crypto_stream.server.quiche": "//source/extensions/quic/crypto_stream:envoy_quic_default_crypto_server_stream", + "envoy.quic.proof_source.filter_chain": "//source/extensions/quic/proof_source:envoy_quic_default_proof_source", + "envoy.quic.server_preferred_address.fixed": "//source/extensions/quic/server_preferred_address:fixed_server_preferred_address_config_factory_config", + "envoy.quic.server_preferred_address.datasource": "//source/extensions/quic/server_preferred_address:datasource_server_preferred_address_config_factory_config", + "envoy.quic.connection_debug_visitor.basic": "//source/extensions/quic/connection_debug_visitor:envoy_quic_connection_debug_visitor_basic", # # UDP packet writers # - "envoy.udp_packet_writer.default": "//source/extensions/udp_packet_writer/default:config", - "envoy.udp_packet_writer.gso": "//source/extensions/udp_packet_writer/gso:config", + "envoy.udp_packet_writer.default": "//source/extensions/udp_packet_writer/default:config", + "envoy.udp_packet_writer.gso": "//source/extensions/udp_packet_writer/gso:config", # # Formatter # - - "envoy.formatter.cel": "//source/extensions/formatter/cel:config", - "envoy.formatter.metadata": "//source/extensions/formatter/metadata:config", - "envoy.formatter.req_without_query": "//source/extensions/formatter/req_without_query:config", + "envoy.formatter.cel": "//source/extensions/formatter/cel:config", + "envoy.formatter.metadata": "//source/extensions/formatter/metadata:config", + "envoy.formatter.req_without_query": "//source/extensions/formatter/req_without_query:config", # # Key value store # - - "envoy.key_value.file_based": "//source/extensions/key_value/file_based:config_lib", + "envoy.key_value.file_based": "//source/extensions/key_value/file_based:config_lib", # # RBAC matchers # - - "envoy.rbac.matchers.upstream_ip_port": "//source/extensions/filters/common/rbac/matchers:upstream_ip_port_lib", + "envoy.rbac.matchers.upstream_ip_port": "//source/extensions/filters/common/rbac/matchers:upstream_ip_port_lib", # # DNS Resolver # # c-ares DNS resolver extension is recommended to be enabled to maintain the legacy DNS resolving behavior. - "envoy.network.dns_resolver.cares": "//source/extensions/network/dns_resolver/cares:config", + "envoy.network.dns_resolver.cares": "//source/extensions/network/dns_resolver/cares:config", # apple DNS resolver extension is only needed in MacOS build plus one want to use apple library for DNS resolving. - "envoy.network.dns_resolver.apple": "//source/extensions/network/dns_resolver/apple:config", + "envoy.network.dns_resolver.apple": "//source/extensions/network/dns_resolver/apple:config", # getaddrinfo DNS resolver extension can be used when the system resolver is desired (e.g., Android) - "envoy.network.dns_resolver.getaddrinfo": "//source/extensions/network/dns_resolver/getaddrinfo:config", + "envoy.network.dns_resolver.getaddrinfo": "//source/extensions/network/dns_resolver/getaddrinfo:config", # # Custom matchers # - - "envoy.matching.custom_matchers.trie_matcher": "//source/extensions/common/matcher:trie_matcher_lib", + "envoy.matching.custom_matchers.trie_matcher": "//source/extensions/common/matcher:trie_matcher_lib", # # Header Validators # - - "envoy.http.header_validators.envoy_default": "//source/extensions/http/header_validators/envoy_default:config", + "envoy.http.header_validators.envoy_default": "//source/extensions/http/header_validators/envoy_default:config", # # Path Pattern Match and Path Pattern Rewrite @@ -483,19 +439,18 @@ EXTENSIONS = { # # Early Data option # - - "envoy.route.early_data_policy.default": "//source/extensions/early_data:default_early_data_policy_lib", + "envoy.route.early_data_policy.default": "//source/extensions/early_data:default_early_data_policy_lib", # # Load balancing policies for upstream # - "envoy.load_balancing_policies.least_request": "//source/extensions/load_balancing_policies/least_request:config", - "envoy.load_balancing_policies.random": "//source/extensions/load_balancing_policies/random:config", - "envoy.load_balancing_policies.round_robin": "//source/extensions/load_balancing_policies/round_robin:config", - "envoy.load_balancing_policies.maglev": "//source/extensions/load_balancing_policies/maglev:config", - "envoy.load_balancing_policies.ring_hash": "//source/extensions/load_balancing_policies/ring_hash:config", - "envoy.load_balancing_policies.subset": "//source/extensions/load_balancing_policies/subset:config", - "envoy.load_balancing_policies.cluster_provided": "//source/extensions/load_balancing_policies/cluster_provided:config", + "envoy.load_balancing_policies.least_request": "//source/extensions/load_balancing_policies/least_request:config", + "envoy.load_balancing_policies.random": "//source/extensions/load_balancing_policies/random:config", + "envoy.load_balancing_policies.round_robin": "//source/extensions/load_balancing_policies/round_robin:config", + "envoy.load_balancing_policies.maglev": "//source/extensions/load_balancing_policies/maglev:config", + "envoy.load_balancing_policies.ring_hash": "//source/extensions/load_balancing_policies/ring_hash:config", + "envoy.load_balancing_policies.subset": "//source/extensions/load_balancing_policies/subset:config", + "envoy.load_balancing_policies.cluster_provided": "//source/extensions/load_balancing_policies/cluster_provided:config", "envoy.load_balancing_policies.client_side_weighted_round_robin": "//source/extensions/load_balancing_policies/client_side_weighted_round_robin:config", # @@ -521,20 +476,19 @@ EXTENSIONS = { # # Geolocation Provider # - "envoy.geoip_providers.maxmind": "//source/extensions/geoip_providers/maxmind:config", + "envoy.geoip_providers.maxmind": "//source/extensions/geoip_providers/maxmind:config", # # cluster specifier plugin # - "envoy.router.cluster_specifier_plugin.lua": "//source/extensions/router/cluster_specifiers/lua:config", # # Extensions for generic proxy # - "envoy.filters.generic.router": "//source/extensions/filters/network/generic_proxy/router:config", - "envoy.generic_proxy.codecs.dubbo": "//source/extensions/filters/network/generic_proxy/codecs/dubbo:config", - "envoy.generic_proxy.codecs.http1": "//source/extensions/filters/network/generic_proxy/codecs/http1:config", + "envoy.filters.generic.router": "//source/extensions/filters/network/generic_proxy/router:config", + "envoy.generic_proxy.codecs.dubbo": "//source/extensions/filters/network/generic_proxy/codecs/dubbo:config", + "envoy.generic_proxy.codecs.http1": "//source/extensions/filters/network/generic_proxy/codecs/http1:config", } # These can be changed to ["//visibility:public"], for downstream builds which diff --git a/test/common/stream_info/stream_info_impl_test.cc b/test/common/stream_info/stream_info_impl_test.cc index ca305401b1085..82f53584378ce 100644 --- a/test/common/stream_info/stream_info_impl_test.cc +++ b/test/common/stream_info/stream_info_impl_test.cc @@ -1,4 +1,5 @@ #include +#include #include #include "envoy/http/protocol.h" @@ -40,6 +41,7 @@ std::chrono::nanoseconds checkDuration(std::chrono::nanoseconds last, class StreamInfoImplTest : public testing::Test { protected: void assertStreamInfoSize(StreamInfoImpl stream_info) { + stream_info.protocol(); ASSERT_TRUE( sizeof(stream_info) == 840 || sizeof(stream_info) == 856 || sizeof(stream_info) == 888 || sizeof(stream_info) == 776 || sizeof(stream_info) == 728 || sizeof(stream_info) == 744 || diff --git a/test/extensions/filters/http/dynamic_forward_proxy/proxy_filter_integration_test.cc b/test/extensions/filters/http/dynamic_forward_proxy/proxy_filter_integration_test.cc index ae4ecbec609b4..dc2be25f4fce8 100644 --- a/test/extensions/filters/http/dynamic_forward_proxy/proxy_filter_integration_test.cc +++ b/test/extensions/filters/http/dynamic_forward_proxy/proxy_filter_integration_test.cc @@ -93,10 +93,9 @@ name: stream-info-to-headers-filter Protobuf::util::TimeUtil::MillisecondsToDuration(5000)); cluster_.set_name("cluster_0"); cluster_.set_lb_policy(envoy::config::cluster::v3::Cluster::CLUSTER_PROVIDED); - cluster_.set_dns_lookup_family( - GetParam() == Network::Address::IpVersion::v4 - ? envoy::extensions::clusters::dns::v3::DnsConfig::V4_ONLY - : envoy::extensions::clusters::dns::v3::DnsConfig::V6_ONLY); + cluster_.set_dns_lookup_family(GetParam() == Network::Address::IpVersion::v4 + ? envoy::extensions::clusters::dns::v3::DnsConfig::V4_ONLY + : envoy::extensions::clusters::dns::v3::DnsConfig::V6_ONLY); protocol_options_.mutable_upstream_http_protocol_options()->set_auto_sni(true); if (!override_auto_sni_header.empty()) { @@ -629,9 +628,9 @@ TEST_P(ProxyFilterIntegrationTest, DNSCacheHostOverflow) { {":scheme", "http"}, {":authority", fmt::format("localhost2", fake_upstreams_[0]->localAddress()->ip()->port())}}; response = codec_client_->makeHeaderOnlyRequest(request_headers2); - // ASSERT_TRUE(response->waitForEndStream()); - // EXPECT_EQ("503", response->headers().getStatusValue()); - // EXPECT_EQ(1, test_server_->counter("dns_cache.foo.host_overflow")->value()); + ASSERT_TRUE(response->waitForEndStream()); + EXPECT_EQ("503", response->headers().getStatusValue()); + EXPECT_EQ(1, test_server_->counter("dns_cache.foo.host_overflow")->value()); } // Verify that the filter works without TLS. diff --git a/test/integration/protocol_integration_test.cc b/test/integration/protocol_integration_test.cc index 921e5ba809251..bf8dea48a4239 100644 --- a/test/integration/protocol_integration_test.cc +++ b/test/integration/protocol_integration_test.cc @@ -79,7 +79,7 @@ TEST_P(ProtocolIntegrationTest, LogicalDns) { RELEASE_ASSERT(bootstrap.mutable_static_resources()->clusters_size() == 1, ""); auto& cluster = *bootstrap.mutable_static_resources()->mutable_clusters(0); cluster.set_type(envoy::config::cluster::v3::Cluster::LOGICAL_DNS); - cluster.set_dns_lookup_family(envoy::config::cluster::v3::Cluster::ALL); + cluster.set_dns_lookup_family(envoy::extensions::clusters::dns::v3::DnsConfig::ALL); }); config_helper_.addConfigModifier( [](envoy::extensions::filters::network::http_connection_manager::v3::HttpConnectionManager& @@ -101,7 +101,7 @@ TEST_P(ProtocolIntegrationTest, StrictDns) { RELEASE_ASSERT(bootstrap.mutable_static_resources()->clusters_size() == 1, ""); auto& cluster = *bootstrap.mutable_static_resources()->mutable_clusters(0); cluster.set_type(envoy::config::cluster::v3::Cluster::STRICT_DNS); - cluster.set_dns_lookup_family(envoy::config::cluster::v3::Cluster::ALL); + cluster.set_dns_lookup_family(envoy::extensions::clusters::dns::v3::DnsConfig::ALL); }); initialize(); codec_client_ = makeHttpConnection(lookupPort("http"));