diff --git a/configs/envoy_double_proxy_v2.template.yaml b/configs/envoy_double_proxy_v2.template.yaml index 2cfc41b48de38..dbdee53beb73a 100644 --- a/configs/envoy_double_proxy_v2.template.yaml +++ b/configs/envoy_double_proxy_v2.template.yaml @@ -32,6 +32,8 @@ "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager codec_type: AUTO stat_prefix: router + common_http_protocol_options: + idle_timeout: 840s route_config: name: local_route virtual_hosts: @@ -60,7 +62,9 @@ typed_config: {} tracing: operation_name: INGRESS - idle_timeout: 840s + common_http_protocol_options: + idle_timeout: 840s + http2_protocol_options: {} access_log: - name: envoy.file_access_log filter: diff --git a/configs/envoy_front_proxy_v2.template.yaml b/configs/envoy_front_proxy_v2.template.yaml index 0f5b9e1e02d5f..55af05dcae8fa 100644 --- a/configs/envoy_front_proxy_v2.template.yaml +++ b/configs/envoy_front_proxy_v2.template.yaml @@ -69,7 +69,8 @@ add_user_agent: true tracing: operation_name: INGRESS - idle_timeout: 840s + common_http_protocol_options: + idle_timeout: 840s access_log: - name: envoy.file_access_log filter: diff --git a/configs/envoy_service_to_service_v2.template.yaml b/configs/envoy_service_to_service_v2.template.yaml index c87c91eb90363..2eef4eaf8e8d5 100644 --- a/configs/envoy_service_to_service_v2.template.yaml +++ b/configs/envoy_service_to_service_v2.template.yaml @@ -6,6 +6,7 @@ protocol: {{protocol}} address: {{address}} port_value: {{port_value}} + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager @@ -94,9 +95,8 @@ "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog path: "/var/log/envoy/ingress_http_sampled.log" {{ access_log_helper.ingress_sampled_log()|indent(10)}} - idle_timeout: 840s - tracing: - operation_name: INGRESS + common_http_protocol_options: + idle_timeout: 840s {% endmacro -%} static_resources: listeners: @@ -106,6 +106,7 @@ static_resources: protocol: TCP port_value: 9001 address: 127.0.0.1 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager @@ -127,9 +128,8 @@ static_resources: {{ helper.make_route_internal(service, options)|indent(16) }} {% endfor %} add_user_agent: true - tracing: - operation_name: EGRESS - idle_timeout: 840s + common_http_protocol_options: + idle_timeout: 840s access_log: - name: envoy.file_access_log filter: @@ -171,6 +171,7 @@ static_resources: protocol: TCP port_value: 9002 address: 127.0.0.1 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager @@ -187,9 +188,8 @@ static_resources: cluster_name: "rds" route_config_name: rds_config_for_listener_1 add_user_agent: true - tracing: - operation_name: EGRESS - idle_timeout: 840s + common_http_protocol_options: + idle_timeout: 840s access_log: - name: envoy.file_access_log filter: @@ -239,7 +239,8 @@ static_resources: typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager codec_type: AUTO - idle_timeout: 840s + common_http_protocol_options: + idle_timeout: 840s stat_prefix: egress_{{ mapping['name'] }} #update access_logs here route_config: diff --git a/configs/original-dst-cluster/proxy_config.yaml b/configs/original-dst-cluster/proxy_config.yaml index 7f0515d61c10e..0b35f928b5192 100644 --- a/configs/original-dst-cluster/proxy_config.yaml +++ b/configs/original-dst-cluster/proxy_config.yaml @@ -32,7 +32,7 @@ static_resources: - name: cluster1 type: ORIGINAL_DST connect_timeout: 6s - lb_policy: ORIGINAL_DST_LB + lb_policy: CLUSTER_PROVIDED dns_lookup_family: V4_ONLY cluster_manager: {} watchdog: {} diff --git a/examples/cors/backend/front-envoy.yaml b/examples/cors/backend/front-envoy.yaml index 21b32df7ca452..b98d21075801e 100644 --- a/examples/cors/backend/front-envoy.yaml +++ b/examples/cors/backend/front-envoy.yaml @@ -23,8 +23,10 @@ static_resources: domains: - "*" cors: - allow_origin: - - "*" + allow_origin_string_match: + - safe_regex: + google_re2: {} + regex: \* allow_methods: "GET" filter_enabled: default_value: @@ -55,8 +57,10 @@ static_resources: route: cluster: backend_service cors: - allow_origin: - - "envoyproxy.io" + allow_origin_string_match: + - safe_regex: + google_re2: {} + regex: .*\.envoyproxy\.io allow_methods: "GET" - match: prefix: "/" diff --git a/examples/grpc-bridge/client/envoy-proxy.yaml b/examples/grpc-bridge/client/envoy-proxy.yaml index 880065d4d80da..ca798eb7eba49 100644 --- a/examples/grpc-bridge/client/envoy-proxy.yaml +++ b/examples/grpc-bridge/client/envoy-proxy.yaml @@ -11,13 +11,14 @@ static_resources: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager codec_type: auto add_user_agent: true - idle_timeout: 0.840s access_log: - name: envoy.file_access_log typed_config: "@type": type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog path: "/dev/stdout" stat_prefix: egress_http + common_http_protocol_options: + idle_timeout: 0.840s use_remote_address: true route_config: name: local_route diff --git a/examples/jaeger-native-tracing/front-envoy-jaeger.yaml b/examples/jaeger-native-tracing/front-envoy-jaeger.yaml index 92163e2ef876d..cd0cad8424ac5 100644 --- a/examples/jaeger-native-tracing/front-envoy-jaeger.yaml +++ b/examples/jaeger-native-tracing/front-envoy-jaeger.yaml @@ -4,14 +4,13 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager generate_request_id: true - tracing: - operation_name: egress codec_type: auto stat_prefix: ingress_http route_config: diff --git a/examples/jaeger-native-tracing/service1-envoy-jaeger.yaml b/examples/jaeger-native-tracing/service1-envoy-jaeger.yaml index 6c6ae595fbdb9..9db41dbfda558 100644 --- a/examples/jaeger-native-tracing/service1-envoy-jaeger.yaml +++ b/examples/jaeger-native-tracing/service1-envoy-jaeger.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: @@ -33,13 +32,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 9000 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: egress codec_type: auto stat_prefix: egress_http route_config: diff --git a/examples/jaeger-native-tracing/service2-envoy-jaeger.yaml b/examples/jaeger-native-tracing/service2-envoy-jaeger.yaml index dae9d8e555330..14a3a77ca438c 100644 --- a/examples/jaeger-native-tracing/service2-envoy-jaeger.yaml +++ b/examples/jaeger-native-tracing/service2-envoy-jaeger.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: diff --git a/examples/jaeger-tracing/front-envoy-jaeger.yaml b/examples/jaeger-tracing/front-envoy-jaeger.yaml index 52cfdce8ff611..069465878dd7b 100644 --- a/examples/jaeger-tracing/front-envoy-jaeger.yaml +++ b/examples/jaeger-tracing/front-envoy-jaeger.yaml @@ -4,14 +4,13 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager generate_request_id: true - tracing: - operation_name: egress codec_type: auto stat_prefix: ingress_http route_config: @@ -67,6 +66,7 @@ tracing: collector_cluster: jaeger collector_endpoint: "/api/v1/spans" shared_span_context: false + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/examples/jaeger-tracing/service1-envoy-jaeger.yaml b/examples/jaeger-tracing/service1-envoy-jaeger.yaml index 7f06fe2da4417..60cb8da6f93a8 100644 --- a/examples/jaeger-tracing/service1-envoy-jaeger.yaml +++ b/examples/jaeger-tracing/service1-envoy-jaeger.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: @@ -33,13 +32,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 9000 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: egress codec_type: auto stat_prefix: egress_http route_config: @@ -107,6 +105,7 @@ tracing: collector_cluster: jaeger collector_endpoint: "/api/v1/spans" shared_span_context: false + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/examples/jaeger-tracing/service2-envoy-jaeger.yaml b/examples/jaeger-tracing/service2-envoy-jaeger.yaml index 75a562ee41987..e98a2ea248b8a 100644 --- a/examples/jaeger-tracing/service2-envoy-jaeger.yaml +++ b/examples/jaeger-tracing/service2-envoy-jaeger.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: @@ -64,6 +63,7 @@ tracing: collector_cluster: jaeger collector_endpoint: "/api/v1/spans" shared_span_context: false + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/examples/zipkin-tracing/front-envoy-zipkin.yaml b/examples/zipkin-tracing/front-envoy-zipkin.yaml index 0199f9b969a84..5d81c99a995e5 100644 --- a/examples/zipkin-tracing/front-envoy-zipkin.yaml +++ b/examples/zipkin-tracing/front-envoy-zipkin.yaml @@ -4,14 +4,13 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager generate_request_id: true - tracing: - operation_name: egress codec_type: auto stat_prefix: ingress_http route_config: @@ -72,6 +71,7 @@ tracing: "@type": type.googleapis.com/envoy.config.trace.v2.ZipkinConfig collector_cluster: zipkin collector_endpoint: "/api/v1/spans" + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/examples/zipkin-tracing/service1-envoy-zipkin.yaml b/examples/zipkin-tracing/service1-envoy-zipkin.yaml index a8f7f3672b2bf..325278e87710a 100644 --- a/examples/zipkin-tracing/service1-envoy-zipkin.yaml +++ b/examples/zipkin-tracing/service1-envoy-zipkin.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: @@ -33,13 +32,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 9000 + traffic_direction: OUTBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: egress codec_type: auto stat_prefix: egress_http route_config: @@ -106,6 +104,7 @@ tracing: "@type": type.googleapis.com/envoy.config.trace.v2.ZipkinConfig collector_cluster: zipkin collector_endpoint: "/api/v1/spans" + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/examples/zipkin-tracing/service2-envoy-zipkin.yaml b/examples/zipkin-tracing/service2-envoy-zipkin.yaml index fd4ed0c1a51cb..ba9d1da7f376c 100644 --- a/examples/zipkin-tracing/service2-envoy-zipkin.yaml +++ b/examples/zipkin-tracing/service2-envoy-zipkin.yaml @@ -4,13 +4,12 @@ static_resources: socket_address: address: 0.0.0.0 port_value: 80 + traffic_direction: INBOUND filter_chains: - filters: - name: envoy.http_connection_manager typed_config: "@type": type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager - tracing: - operation_name: ingress codec_type: auto stat_prefix: ingress_http route_config: @@ -63,6 +62,7 @@ tracing: "@type": type.googleapis.com/envoy.config.trace.v2.ZipkinConfig collector_cluster: zipkin collector_endpoint: "/api/v1/spans" + collector_endpoint_version: HTTP_JSON admin: access_log_path: "/dev/null" address: diff --git a/source/common/runtime/runtime_features.cc b/source/common/runtime/runtime_features.cc index 483f4682e3cc3..5dc951fec92be 100644 --- a/source/common/runtime/runtime_features.cc +++ b/source/common/runtime/runtime_features.cc @@ -48,6 +48,26 @@ constexpr const char* disallowed_features[] = { // Acts as both a test entry for deprecated.proto and a marker for the Envoy // deprecation scripts. "envoy.deprecated_features.deprecated.proto:is_deprecated_fatal", + // 1.12.0 + "envoy.deprecated_features.route.proto:regex_match", + "envoy.deprecated_features.route.proto:regex", + "envoy.deprecated_features.cds.proto:tls_context", + "envoy.deprecated_features.route.proto:allow_origin", + "envoy.deprecated_features.string.proto:regex", + "envoy.deprecated_features.route.proto:value", + "envoy.deprecated_features.http_connection_manager.proto:idle_timeout", + "envoy.deprecated_features.lds.proto:use_original_dst", + "envoy.deprecated_features.config_source.proto:DEPRECATED_AND_UNAVAILABLE_DO_NOT_USE", + "envoy.deprecated_features.route.proto:pattern", + "envoy.deprecated_features.listener.proto:tls_context", + "envoy.deprecated_features.http_connection_manager.proto:operation_name", + "envoy.deprecated_features.health_check.proto:use_http2", + "envoy.deprecated_features.trace.proto:DEPRECATED_AND_UNAVAILABLE_DO_NOT_USE", + "envoy.deprecated_features.trace.proto:HTTP_JSON_V1", + "envoy.deprecated_features.cds.proto:ORIGINAL_DST_LB", + "envoy.deprecated_features.route.proto:regex", + "envoy.deprecated_features.cds.proto:extension_protocol_options", + "envoy.deprecated_features.route.proto:method", // 1.10.0 "envoy.deprecated_features.config_source.proto:UNSUPPORTED_REST_LEGACY", "envoy.deprecated_features.ext_authz.proto:use_alpha", diff --git a/test/config_test/example_configs_test.cc b/test/config_test/example_configs_test.cc index fef29e44112c3..6da6d5e55f0af 100644 --- a/test/config_test/example_configs_test.cc +++ b/test/config_test/example_configs_test.cc @@ -5,7 +5,7 @@ #include "gtest/gtest.h" namespace Envoy { -TEST(ExampleConfigsTest, DEPRECATED_FEATURE_TEST(All)) { +TEST(ExampleConfigsTest, All) { TestEnvironment::exec( {TestEnvironment::runfilesPath("test/config_test/example_configs_test_setup.sh")});