From ab80ff8c19eb9efbf0c1d9cf5da88277e0061452 Mon Sep 17 00:00:00 2001 From: "data-plane-api(CircleCI)" Date: Sat, 11 Jan 2020 23:43:58 +0000 Subject: [PATCH] On-demand VHDS implementation (#8617) Implements on-demand resolution of VirtualHosts via VHDS Signed-off-by: Dmitri Dolguikh Mirrored from https://github.com/envoyproxy/envoy @ 8e2d909ad22f84d9eb055f06890924a5879bad76 --- BUILD | 2 ++ docs/BUILD | 1 + envoy/config/filter/http/on_demand/v2/BUILD | 9 +++++++++ .../filter/http/on_demand/v2/on_demand.proto | 19 ++++++++++++++++++ .../filters/http/on_demand/v3alpha/BUILD | 12 +++++++++++ .../http/on_demand/v3alpha/on_demand.proto | 20 +++++++++++++++++++ 6 files changed, 63 insertions(+) create mode 100644 envoy/config/filter/http/on_demand/v2/BUILD create mode 100644 envoy/config/filter/http/on_demand/v2/on_demand.proto create mode 100644 envoy/extensions/filters/http/on_demand/v3alpha/BUILD create mode 100644 envoy/extensions/filters/http/on_demand/v3alpha/on_demand.proto diff --git a/BUILD b/BUILD index caff7f08..7fe8f9bb 100644 --- a/BUILD +++ b/BUILD @@ -51,6 +51,7 @@ proto_library( "//envoy/config/filter/http/ip_tagging/v2:pkg", "//envoy/config/filter/http/jwt_authn/v2alpha:pkg", "//envoy/config/filter/http/lua/v2:pkg", + "//envoy/config/filter/http/on_demand/v2:pkg", "//envoy/config/filter/http/original_src/v2alpha1:pkg", "//envoy/config/filter/http/rate_limit/v2:pkg", "//envoy/config/filter/http/rbac/v2:pkg", @@ -143,6 +144,7 @@ proto_library( "//envoy/extensions/filters/http/ip_tagging/v3alpha:pkg", "//envoy/extensions/filters/http/jwt_authn/v3alpha:pkg", "//envoy/extensions/filters/http/lua/v3alpha:pkg", + "//envoy/extensions/filters/http/on_demand/v3alpha:pkg", "//envoy/extensions/filters/http/original_src/v3alpha:pkg", "//envoy/extensions/filters/http/ratelimit/v3alpha:pkg", "//envoy/extensions/filters/http/rbac/v3alpha:pkg", diff --git a/docs/BUILD b/docs/BUILD index 0a18ecaa..9e20a69f 100644 --- a/docs/BUILD +++ b/docs/BUILD @@ -51,6 +51,7 @@ proto_library( "//envoy/config/filter/http/ip_tagging/v2:pkg", "//envoy/config/filter/http/jwt_authn/v2alpha:pkg", "//envoy/config/filter/http/lua/v2:pkg", + "//envoy/config/filter/http/on_demand/v2:pkg", "//envoy/config/filter/http/original_src/v2alpha1:pkg", "//envoy/config/filter/http/rate_limit/v2:pkg", "//envoy/config/filter/http/rbac/v2:pkg", diff --git a/envoy/config/filter/http/on_demand/v2/BUILD b/envoy/config/filter/http/on_demand/v2/BUILD new file mode 100644 index 00000000..ef3541eb --- /dev/null +++ b/envoy/config/filter/http/on_demand/v2/BUILD @@ -0,0 +1,9 @@ +# DO NOT EDIT. This file is generated by tools/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"], +) diff --git a/envoy/config/filter/http/on_demand/v2/on_demand.proto b/envoy/config/filter/http/on_demand/v2/on_demand.proto new file mode 100644 index 00000000..b9df400a --- /dev/null +++ b/envoy/config/filter/http/on_demand/v2/on_demand.proto @@ -0,0 +1,19 @@ +syntax = "proto3"; + +package envoy.config.filter.http.on_demand.v2; + +import "udpa/annotations/migrate.proto"; +import "validate/validate.proto"; + +option java_package = "io.envoyproxy.envoy.config.filter.http.on_demand.v2"; +option java_outer_classname = "OnDemandProto"; +option java_multiple_files = true; +option (udpa.annotations.file_migrate).move_to_package = + "envoy.extensions.filters.http.on_demand.v3alpha"; + +// [#protodoc-title: OnDemand] +// IP tagging :ref:`configuration overview `. +// [#extension: envoy.filters.http.on_demand] + +message OnDemand { +} diff --git a/envoy/extensions/filters/http/on_demand/v3alpha/BUILD b/envoy/extensions/filters/http/on_demand/v3alpha/BUILD new file mode 100644 index 00000000..7f2546d2 --- /dev/null +++ b/envoy/extensions/filters/http/on_demand/v3alpha/BUILD @@ -0,0 +1,12 @@ +# DO NOT EDIT. This file is generated by tools/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/http/on_demand/v2:pkg", + "@com_github_cncf_udpa//udpa/annotations:pkg", + ], +) diff --git a/envoy/extensions/filters/http/on_demand/v3alpha/on_demand.proto b/envoy/extensions/filters/http/on_demand/v3alpha/on_demand.proto new file mode 100644 index 00000000..8c5516ad --- /dev/null +++ b/envoy/extensions/filters/http/on_demand/v3alpha/on_demand.proto @@ -0,0 +1,20 @@ +syntax = "proto3"; + +package envoy.extensions.filters.http.on_demand.v3alpha; + +import "udpa/annotations/versioning.proto"; + +import "validate/validate.proto"; + +option java_package = "io.envoyproxy.envoy.extensions.filters.http.on_demand.v3alpha"; +option java_outer_classname = "OnDemandProto"; +option java_multiple_files = true; + +// [#protodoc-title: OnDemand] +// IP tagging :ref:`configuration overview `. +// [#extension: envoy.filters.http.on_demand] + +message OnDemand { + option (udpa.annotations.versioning).previous_message_type = + "envoy.config.filter.http.on_demand.v2.OnDemand"; +}