From 7b0420ba081580c4541fd8785b448a3aa56ddc6b Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Fri, 14 Feb 2020 12:22:27 -0500 Subject: [PATCH 1/5] envoy.mk: Tidy whitespace --- cxx/envoy.mk | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/cxx/envoy.mk b/cxx/envoy.mk index 2ebcd76f39..7392bc8e22 100644 --- a/cxx/envoy.mk +++ b/cxx/envoy.mk @@ -5,14 +5,14 @@ include $(OSS_HOME)/build-aux/prelude.mk YES_I_AM_OK_WITH_COMPILING_ENVOY ?= # IF YOU MESS WITH ANY OF THESE VALUES, YOU MUST RUN `make update-base`. - _git_remote_urls := $(shell git remote | xargs -n1 git remote get-url --all) - IS_PRIVATE ?= $(findstring private,$(_git_remote_urls)) + _git_remote_urls := $(shell git remote | xargs -n1 git remote get-url --all) + IS_PRIVATE ?= $(findstring private,$(_git_remote_urls)) ENVOY_REPO ?= $(if $(IS_PRIVATE),git@github.com:datawire/envoy-private.git,git://github.com/datawire/envoy.git) ENVOY_COMMIT ?= d17d947caef13f1bdd235c3fccff77814883bb46 ENVOY_COMPILATION_MODE ?= opt - # Increment BASE_ENVOY_RELVER on changes to `docker/base-envoy/Dockerfile`, or Envoy recipes + # Increment BASE_ENVOY_RELVER on changes to `docker/base-envoy/Dockerfile`, or Envoy recipes BASE_ENVOY_RELVER ?= 7 - ENVOY_DOCKER_TAG ?= $(if $(IS_PRIVATE),quay.io/datawire/ambassador-base-private:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE),quay.io/datawire/ambassador-base:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE)) + ENVOY_DOCKER_TAG ?= $(if $(IS_PRIVATE),quay.io/datawire/ambassador-base-private:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE),quay.io/datawire/ambassador-base:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE)) BASE_VERSION.envoy ?= $(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE) # END LIST OF VARIABLES REQUIRING `make update-base`. @@ -59,7 +59,7 @@ $(srcdir)/envoy: FORCE $(srcdir)/envoy-build-image.txt: $(srcdir)/envoy $(WRITE_IFCHANGED) FORCE @PS4=; set -ex -o pipefail; { \ pushd $ Date: Fri, 14 Feb 2020 17:20:02 -0500 Subject: [PATCH 2/5] envoy.mk: Fix missing semicolon --- cxx/envoy.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cxx/envoy.mk b/cxx/envoy.mk index 7392bc8e22..5633085338 100644 --- a/cxx/envoy.mk +++ b/cxx/envoy.mk @@ -116,7 +116,7 @@ $(OSS_HOME)/bin_linux_amd64/envoy-static: $(ENVOY_BASH.deps) FORCE exit 1; \ fi; \ $(call ENVOY_BASH.cmd, \ - docker exec --workdir=/root/envoy $$(cat $(srcdir)/envoy-build-container.txt) /bin/bash -c "export CC=/opt/llvm/bin/clang && export CXX=/opt/llvm/bin/clang++ && bazel build --verbose_failures -c $(ENVOY_COMPILATION_MODE) --config=clang //source/exe:envoy-static;" \ + docker exec --workdir=/root/envoy $$(cat $(srcdir)/envoy-build-container.txt) /bin/bash -c "export CC=/opt/llvm/bin/clang && export CXX=/opt/llvm/bin/clang++ && bazel build --verbose_failures -c $(ENVOY_COMPILATION_MODE) --config=clang //source/exe:envoy-static;"; \ rsync -Pav --blocking-io -e 'docker exec -i' $$(cat $(srcdir)/envoy-build-container.txt):/root/envoy/bazel-bin/source/exe/envoy-static $@; \ ); \ fi; \ From 519290c66264a20b61c7490513a929c85d0f7f97 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Tue, 18 Feb 2020 18:43:17 -0500 Subject: [PATCH 3/5] ambex/main.go: Tidy up imports --- cmd/ambex/main.go | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/cmd/ambex/main.go b/cmd/ambex/main.go index 68865295e0..e39caa2740 100644 --- a/cmd/ambex/main.go +++ b/cmd/ambex/main.go @@ -51,23 +51,24 @@ import ( "strings" "syscall" + "github.com/fsnotify/fsnotify" + log "github.com/sirupsen/logrus" "google.golang.org/grpc" - log "github.com/sirupsen/logrus" + // protobuf library + "github.com/gogo/protobuf/jsonpb" + "github.com/gogo/protobuf/proto" + "github.com/gogo/protobuf/types" - v2 "github.com/datawire/ambassador/pkg/api/envoy/api/v2" - core "github.com/datawire/ambassador/pkg/api/envoy/api/v2/core" + // envoy control plane "github.com/datawire/ambassador/pkg/envoy-control-plane/cache" "github.com/datawire/ambassador/pkg/envoy-control-plane/server" + // envoy protobuf + v2 "github.com/datawire/ambassador/pkg/api/envoy/api/v2" + core "github.com/datawire/ambassador/pkg/api/envoy/api/v2/core" bootstrap "github.com/datawire/ambassador/pkg/api/envoy/config/bootstrap/v2" discovery "github.com/datawire/ambassador/pkg/api/envoy/service/discovery/v2" - - "github.com/fsnotify/fsnotify" - - "github.com/gogo/protobuf/jsonpb" - "github.com/gogo/protobuf/proto" - "github.com/gogo/protobuf/types" ) const ( From 5b28532cdcbbb7c10552fcc357202785ba80f37a Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Wed, 19 Feb 2020 15:54:55 -0500 Subject: [PATCH 4/5] envoy.mk: Clean up variables a touch --- builder/Dockerfile | 2 +- builder/builder.sh | 8 ++++---- cxx/envoy.mk | 20 +++++++++++++------- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/builder/Dockerfile b/builder/Dockerfile index c661566517..4e0ae84578 100644 --- a/builder/Dockerfile +++ b/builder/Dockerfile @@ -26,7 +26,7 @@ ARG base="frolvlad/alpine-glibc:alpine-3.10" ARG artifacts="builder" # This controls where we copy envoy from. -ARG envoy="quay.io/datawire/ambassador-base:envoy-7.d17d947caef13f1bdd235c3fccff77814883bb46.opt" +ARG envoy="i-forgot-to-set-build-arg-envoy" ######################################## # The builder image diff --git a/builder/builder.sh b/builder/builder.sh index c2bfd82293..4a47e5acc7 100755 --- a/builder/builder.sh +++ b/builder/builder.sh @@ -69,7 +69,7 @@ bootstrap() { if [ -z "$(builder)" ] ; then printf "${CYN}==> ${GRN}Bootstrapping build image${END}\n" - ${DBUILD} --target builder ${DIR} -t builder + ${DBUILD} --build-arg envoy="${ENVOY_DOCKER_TAG}" --target builder ${DIR} -t builder if [ "$(uname -s)" == Darwin ]; then DOCKER_GID=$(stat -f "%g" /var/run/docker.sock) else @@ -356,11 +356,11 @@ case "${cmd}" in docker rmi -f "${name}" &> /dev/null docker commit -c 'ENTRYPOINT [ "/bin/bash" ]' $(builder) "${name}" printf "${CYN}==> ${GRN}Building ${BLU}${BUILDER_NAME}${END}\n" - ${DBUILD} ${DIR} --build-arg artifacts=${name} --target ambassador -t ${BUILDER_NAME} + ${DBUILD} ${DIR} --build-arg artifacts=${name} --build-arg envoy="${ENVOY_DOCKER_TAG}" --target ambassador -t ${BUILDER_NAME} printf "${CYN}==> ${GRN}Building ${BLU}kat-client${END}\n" - ${DBUILD} ${DIR} --build-arg artifacts=${name} --target kat-client -t kat-client + ${DBUILD} ${DIR} --build-arg artifacts=${name} --build-arg envoy="${ENVOY_DOCKER_TAG}" --target kat-client -t kat-client printf "${CYN}==> ${GRN}Building ${BLU}kat-server${END}\n" - ${DBUILD} ${DIR} --build-arg artifacts=${name} --target kat-server -t kat-server + ${DBUILD} ${DIR} --build-arg artifacts=${name} --build-arg envoy="${ENVOY_DOCKER_TAG}" --target kat-server -t kat-server fi dexec rm -f /buildroot/image.dirty ;; diff --git a/cxx/envoy.mk b/cxx/envoy.mk index 5633085338..a77dedd409 100644 --- a/cxx/envoy.mk +++ b/cxx/envoy.mk @@ -3,20 +3,26 @@ srcdir := $(OSS_HOME)/cxx include $(OSS_HOME)/build-aux/prelude.mk YES_I_AM_OK_WITH_COMPILING_ENVOY ?= +YES_I_AM_UPDATING_THE_BASE_IMAGES ?= + +_git_remote_urls := $(shell git remote | xargs -n1 git remote get-url --all) +IS_PRIVATE ?= $(findstring private,$(_git_remote_urls)) # IF YOU MESS WITH ANY OF THESE VALUES, YOU MUST RUN `make update-base`. - _git_remote_urls := $(shell git remote | xargs -n1 git remote get-url --all) - IS_PRIVATE ?= $(findstring private,$(_git_remote_urls)) ENVOY_REPO ?= $(if $(IS_PRIVATE),git@github.com:datawire/envoy-private.git,git://github.com/datawire/envoy.git) ENVOY_COMMIT ?= d17d947caef13f1bdd235c3fccff77814883bb46 ENVOY_COMPILATION_MODE ?= opt # Increment BASE_ENVOY_RELVER on changes to `docker/base-envoy/Dockerfile`, or Envoy recipes BASE_ENVOY_RELVER ?= 7 - ENVOY_DOCKER_TAG ?= $(if $(IS_PRIVATE),quay.io/datawire/ambassador-base-private:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE),quay.io/datawire/ambassador-base:envoy-$(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE)) - BASE_VERSION.envoy ?= $(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE) + ENVOY_DOCKER_REPO ?= quay.io/datawire/ambassador-base$(if $(IS_PRIVATE),-private) + ENVOY_DOCKER_VERSION ?= $(BASE_ENVOY_RELVER).$(ENVOY_COMMIT).$(ENVOY_COMPILATION_MODE) + ENVOY_DOCKER_TAG ?= $(ENVOY_DOCKER_REPO):envoy-$(ENVOY_DOCKER_VERSION) # END LIST OF VARIABLES REQUIRING `make update-base`. +# for builder.sh... +export ENVOY_DOCKER_TAG + # # Envoy build @@ -100,12 +106,12 @@ ENVOY_BASH.deps = $(srcdir)/envoy-build-container.txt $(OSS_HOME)/bin_linux_amd64/envoy-static: $(ENVOY_BASH.deps) FORCE mkdir -p $(@D) @PS4=; set -ex; { \ - if docker run --rm --entrypoint=true $(BASE_IMAGE.envoy); then \ - rsync -Pav --blocking-io -e 'docker run --rm -i' $$(docker image inspect $(BASE_IMAGE.envoy) --format='{{.Id}}' | sed 's/^sha256://'):/usr/local/bin/envoy $@; \ + if docker run --rm --entrypoint=true $(ENVOY_DOCKER_TAG); then \ + rsync -Pav --blocking-io -e 'docker run --rm -i' $$(docker image inspect $(ENVOY_DOCKER_TAG) --format='{{.Id}}' | sed 's/^sha256://'):/usr/local/bin/envoy $@; \ else \ if [ -z '$(YES_I_AM_UPDATING_THE_BASE_IMAGES)' ]; then \ { set +x; } &>/dev/null; \ - echo 'error: failed to pull $(BASE_IMAGE.envoy), but $$YES_I_AM_UPDATING_THE_BASE_IMAGES is not set'; \ + echo 'error: failed to pull $(ENVOY_DOCKER_TAG), but $$YES_I_AM_UPDATING_THE_BASE_IMAGES is not set'; \ echo ' If you are trying to update the base images, then set that variable to a non-empty value.'; \ echo ' If you are not trying to update the base images, then check your network connection and Docker credentials.'; \ exit 1; \ From b0b7bd8544b2e25e87b6b930975c99dde556e756 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Tue, 18 Feb 2020 16:36:03 -0500 Subject: [PATCH 5/5] Update use of deprecated fields This is driven by "which of these cause test failures". It is NOT an audit of the codebase cross-referenced with . It would be a good idea to do that audit at some point. --- cmd/ambex/main.go | 7 +- python/ambassador/envoy/v2/v2bootstrap.py | 22 +- python/ambassador/envoy/v2/v2cluster.py | 13 +- python/ambassador/envoy/v2/v2config.py | 28 +- python/ambassador/envoy/v2/v2listener.py | 20 +- python/ambassador/envoy/v2/v2route.py | 4 + python/ambassador/ir/ircors.py | 15 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 30 +- .../acceptancegrpctest/bootstrap-ads.json | 13 + .../acceptancegrpctest/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 30 +- .../acceptancegrpcwebtest/bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 92 +- .../gold/ambassadoridtest/bootstrap-ads.json | 13 + .../ambassadoridtest/snapshots/econf.json | 30 +- .../ambassadoridtest/snapshots/snapshot.yaml | 30 +- .../authenticationgrpctest/bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 116 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 46 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 56 +- .../snapshots/snapshot.yaml | 44 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 56 +- .../snapshots/snapshot.yaml | 44 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 56 +- .../snapshots/snapshot.yaml | 44 +- .../authenticationtest/bootstrap-ads.json | 13 + .../authenticationtest/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 38 +- .../authenticationtestv1/bootstrap-ads.json | 13 + .../authenticationtestv1/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 46 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 30 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 48 +- python/tests/gold/empty/bootstrap-ads.json | 13 + python/tests/gold/empty/snapshots/aconf.json | 8 +- python/tests/gold/empty/snapshots/econf.json | 30 +- .../tests/gold/empty/snapshots/snapshot.yaml | 22 +- .../gold/envoylogtest/bootstrap-ads.json | 13 + .../gold/envoylogtest/snapshots/econf.json | 30 +- .../gold/envoylogtest/snapshots/snapshot.yaml | 36 +- .../gold/globalcorstest/bootstrap-ads.json | 13 + .../gold/globalcorstest/snapshots/econf.json | 90 +- .../gold/globalcorstest/snapshots/ir.json | 18 +- .../globalcorstest/snapshots/snapshot.yaml | 96 +- .../gzipminimumconfigtest/bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 96 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 30 +- python/tests/gold/gziptest/bootstrap-ads.json | 13 + .../tests/gold/gziptest/snapshots/econf.json | 30 +- .../gold/gziptest/snapshots/snapshot.yaml | 96 +- .../gold/hostcrdcleartext/bootstrap-ads.json | 13 + .../hostcrdcleartext/snapshots/econf.json | 30 +- .../hostcrdcleartext/snapshots/snapshot.yaml | 48 +- .../gold/hostcrddouble/bootstrap-ads.json | 13 + .../gold/hostcrddouble/snapshots/aconf.json | 6 +- .../gold/hostcrddouble/snapshots/econf.json | 75 +- .../hostcrddouble/snapshots/snapshot.yaml | 218 +- .../hostcrdmanualcontext/bootstrap-ads.json | 13 + .../hostcrdmanualcontext/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 118 +- .../gold/hostcrdno8080/bootstrap-ads.json | 13 + .../gold/hostcrdno8080/snapshots/econf.json | 30 +- .../hostcrdno8080/snapshots/snapshot.yaml | 54 +- .../gold/hostcrdsingle/bootstrap-ads.json | 13 + .../gold/hostcrdsingle/snapshots/econf.json | 47 +- .../hostcrdsingle/snapshots/snapshot.yaml | 54 +- .../linkerdheadermapping/bootstrap-ads.json | 13 + .../linkerdheadermapping/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 64 +- .../listeneridletimeout/bootstrap-ads.json | 64 - .../listeneridletimeout/snapshots/aconf.json | 193 -- .../listeneridletimeout/snapshots/econf.json | 302 --- .../listeneridletimeout/snapshots/ir.json | 597 ----- .../snapshots/snapshot.yaml | 154 -- .../gold/logservicetest/bootstrap-ads.json | 13 + .../gold/logservicetest/snapshots/econf.json | 30 +- .../logservicetest/snapshots/snapshot.yaml | 48 +- python/tests/gold/plain/bootstrap-ads.json | 13 + python/tests/gold/plain/snapshots/aconf.json | 8 +- python/tests/gold/plain/snapshots/econf.json | 142 +- python/tests/gold/plain/snapshots/ir.json | 48 +- .../tests/gold/plain/snapshots/snapshot.yaml | 2060 ++++++++--------- .../gold/ratelimitv0test/bootstrap-ads.json | 13 + .../gold/ratelimitv0test/snapshots/econf.json | 30 +- .../ratelimitv0test/snapshots/snapshot.yaml | 114 +- .../gold/ratelimitv1test/bootstrap-ads.json | 13 + .../gold/ratelimitv1test/snapshots/econf.json | 30 +- .../ratelimitv1test/snapshots/snapshot.yaml | 112 +- .../ratelimitv1withtlstest/bootstrap-ads.json | 13 + .../snapshots/econf.json | 62 +- .../snapshots/snapshot.yaml | 126 +- .../gold/redirecttests/bootstrap-ads.json | 13 + .../gold/redirecttests/snapshots/econf.json | 47 +- .../redirecttests/snapshots/snapshot.yaml | 42 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 47 +- .../snapshots/snapshot.yaml | 98 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 36 +- .../gold/retrypolicytest/bootstrap-ads.json | 13 + .../gold/retrypolicytest/snapshots/econf.json | 30 +- .../retrypolicytest/snapshots/snapshot.yaml | 36 +- .../gold/saferegexmapping/bootstrap-ads.json | 13 + .../saferegexmapping/snapshots/econf.json | 30 +- .../saferegexmapping/snapshots/snapshot.yaml | 30 +- .../gold/servernametest/bootstrap-ads.json | 13 + .../gold/servernametest/snapshots/econf.json | 30 +- .../servernametest/snapshots/snapshot.yaml | 96 +- .../gold/tcpmappingtest/bootstrap-ads.json | 13 + .../gold/tcpmappingtest/snapshots/econf.json | 100 +- .../tcpmappingtest/snapshots/snapshot.yaml | 142 +- python/tests/gold/tls/bootstrap-ads.json | 13 + python/tests/gold/tls/snapshots/econf.json | 30 +- python/tests/gold/tls/snapshots/snapshot.yaml | 42 +- .../tlscontextciphersuites/bootstrap-ads.json | 13 + .../snapshots/econf.json | 38 +- .../snapshots/snapshot.yaml | 102 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 42 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 38 +- .../snapshots/snapshot.yaml | 102 +- .../gold/tlscontextstest/bootstrap-ads.json | 13 + .../gold/tlscontextstest/snapshots/econf.json | 30 +- .../tlscontextstest/snapshots/snapshot.yaml | 102 +- .../gold/tlscontexttest/bootstrap-ads.json | 13 + .../gold/tlscontexttest/snapshots/econf.json | 97 +- .../tlscontexttest/snapshots/snapshot.yaml | 74 +- .../gold/tlsinvalidsecret/bootstrap-ads.json | 13 + .../tlsinvalidsecret/snapshots/econf.json | 30 +- .../tlsinvalidsecret/snapshots/snapshot.yaml | 36 +- .../tlsoriginationsecret/bootstrap-ads.json | 13 + .../tlsoriginationsecret/snapshots/econf.json | 82 +- .../snapshots/snapshot.yaml | 42 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 34 +- .../snapshots/snapshot.yaml | 54 +- .../tests/gold/tracingtest/bootstrap-ads.json | 13 + .../gold/tracingtest/snapshots/econf.json | 34 +- .../gold/tracingtest/snapshots/snapshot.yaml | 110 +- .../bootstrap-ads.json | 13 + .../snapshots/econf.json | 34 +- .../snapshots/snapshot.yaml | 46 +- .../unsaferegexmapping/bootstrap-ads.json | 13 + .../unsaferegexmapping/snapshots/econf.json | 30 +- .../snapshots/snapshot.yaml | 30 +- .../tests/gold/xfpredirect/bootstrap-ads.json | 13 + .../gold/xfpredirect/snapshots/econf.json | 30 +- .../gold/xfpredirect/snapshots/snapshot.yaml | 96 +- python/tests/t_listeneridletimeout.py | 6 +- python/tests/t_logservice.py | 2 +- 169 files changed, 5005 insertions(+), 4643 deletions(-) delete mode 100644 python/tests/gold/listeneridletimeout/bootstrap-ads.json delete mode 100644 python/tests/gold/listeneridletimeout/snapshots/aconf.json delete mode 100644 python/tests/gold/listeneridletimeout/snapshots/econf.json delete mode 100644 python/tests/gold/listeneridletimeout/snapshots/ir.json delete mode 100644 python/tests/gold/listeneridletimeout/snapshots/snapshot.yaml diff --git a/cmd/ambex/main.go b/cmd/ambex/main.go index e39caa2740..d20df2e34b 100644 --- a/cmd/ambex/main.go +++ b/cmd/ambex/main.go @@ -64,10 +64,15 @@ import ( "github.com/datawire/ambassador/pkg/envoy-control-plane/cache" "github.com/datawire/ambassador/pkg/envoy-control-plane/server" - // envoy protobuf + // envoy protobuf -- Be sure to import the package of any types that the Python + // emits a "@type" of in the generated config, even if that package is otherwise + // not used by ambex. v2 "github.com/datawire/ambassador/pkg/api/envoy/api/v2" + _ "github.com/datawire/ambassador/pkg/api/envoy/api/v2/auth" core "github.com/datawire/ambassador/pkg/api/envoy/api/v2/core" + _ "github.com/datawire/ambassador/pkg/api/envoy/config/accesslog/v2" bootstrap "github.com/datawire/ambassador/pkg/api/envoy/config/bootstrap/v2" + _ "github.com/datawire/ambassador/pkg/api/envoy/config/filter/network/http_connection_manager/v2" discovery "github.com/datawire/ambassador/pkg/api/envoy/service/discovery/v2" ) diff --git a/python/ambassador/envoy/v2/v2bootstrap.py b/python/ambassador/envoy/v2/v2bootstrap.py index 374059eb92..c0ef3460b6 100644 --- a/python/ambassador/envoy/v2/v2bootstrap.py +++ b/python/ambassador/envoy/v2/v2bootstrap.py @@ -32,7 +32,27 @@ def __init__(self, config: 'V2Config') -> None: "cds_config": { "ads": {} }, "lds_config": { "ads": {} } }, - "admin": dict(config.admin) + "admin": dict(config.admin), + 'layered_runtime': { + 'layers': [ + { + 'name': 'static_layer', + 'static_layer': { + # For now, we enable the deprecated & disallowed_by_default "HTTP_JSON_V1" Zipkin + # collector_endpoint_version because it repesents the Zipkin v1 API, while the + # non-deprecated options HTTP_JSON and HTTP_PROTO are the Zipkin v2 API; switching + # top one of them would change how Envoy talks to the outside world. + 'envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1': True, + # Give our users more time to migrate to v2; we've said that we'll continue + # supporting both for a while even after we change the default. + 'envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha': True, + # We haven't yet told users that we'll be deprecating `regex_type: unsafe`. + 'envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex': True, # HTTP path + 'envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match': True # HTTP header + } + } + ] + } }) clusters = [{ diff --git a/python/ambassador/envoy/v2/v2cluster.py b/python/ambassador/envoy/v2/v2cluster.py index fff93c25ea..6fb4c3ea62 100644 --- a/python/ambassador/envoy/v2/v2cluster.py +++ b/python/ambassador/envoy/v2/v2cluster.py @@ -74,13 +74,20 @@ def __init__(self, config: 'V2Config', cluster: IRCluster) -> None: # minimal `tls_context` to enable HTTPS origination. if ctx.get('_ambassador_enabled', False): - fields['tls_context'] = { + envoy_ctx = { 'common_tls_context': {} } else: envoy_ctx = V2TLSContext(ctx=ctx, host_rewrite=cluster.get('host_rewrite', None)) - if envoy_ctx: - fields['tls_context'] = envoy_ctx + + if envoy_ctx: + fields['transport_socket'] = { + 'name': 'envoy.transport_sockets.tls', + 'typed_config': { + '@type': 'type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext', + **envoy_ctx + } + } keepalive = cluster.get('keepalive', None) diff --git a/python/ambassador/envoy/v2/v2config.py b/python/ambassador/envoy/v2/v2config.py index 1cba371f9a..014564e2d0 100644 --- a/python/ambassador/envoy/v2/v2config.py +++ b/python/ambassador/envoy/v2/v2config.py @@ -56,9 +56,11 @@ def __init__(self, ir: IR) -> None: V2Bootstrap.generate(self) def as_dict(self) -> Dict[str, Any]: + bootstrap_config, ads_config = self.split_config() + d = { - 'bootstrap': self.bootstrap, - 'static_resources': self.static_resources + 'bootstrap': bootstrap_config, + **ads_config } return d @@ -66,7 +68,27 @@ def as_dict(self) -> Dict[str, Any]: def split_config(self) -> Tuple[Dict[str, Any], Dict[str, Any]]: ads_config = { '@type': '/envoy.config.bootstrap.v2.Bootstrap', - 'static_resources': self.static_resources + 'static_resources': self.static_resources, + 'layered_runtime': { + 'layers': [ + { + 'name': 'static_layer', + 'static_layer': { + # For now, we enable the deprecated & disallowed_by_default "HTTP_JSON_V1" Zipkin + # collector_endpoint_version because it repesents the Zipkin v1 API, while the + # non-deprecated options HTTP_JSON and HTTP_PROTO are the Zipkin v2 API; switching + # top one of them would change how Envoy talks to the outside world. + 'envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1': True, + # Give our users more time to migrate to v2; we've said that we'll continue + # supporting both for a while even after we change the default. + 'envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha': True, + # We haven't yet told users that we'll be deprecating `regex_type: unsafe`. + 'envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex': True, # HTTP path + 'envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match': True # HTTP header + } + } + ] + } } bootstrap_config = dict(self.bootstrap) diff --git a/python/ambassador/envoy/v2/v2listener.py b/python/ambassador/envoy/v2/v2listener.py index 7d8f3463d6..8654fb1622 100644 --- a/python/ambassador/envoy/v2/v2listener.py +++ b/python/ambassador/envoy/v2/v2listener.py @@ -662,6 +662,7 @@ def __init__(self, config: 'V2Config', service_port: int) -> None: self.first_vhost: Optional[V2VirtualHost] = None self.http_filters: List[dict] = [] self.listener_filters: List[dict] = [] + self.traffic_direction: str = "UNSPECIFIED" self.config.ir.logger.debug(f"V2Listener {self.name} created") @@ -731,7 +732,8 @@ def __init__(self, config: 'V2Config', service_port: int) -> None: self.access_log.append({ 'name': 'envoy.file_access_log', - 'config': { + 'typed_config': { + '@type': 'type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog', 'path': self.config.ir.ambassador_module.envoy_log_path, 'json_format': json_format } @@ -746,7 +748,8 @@ def __init__(self, config: 'V2Config', service_port: int) -> None: self.config.ir.logger.debug("V2Listener: Using log_format '%s'" % log_format) self.access_log.append({ 'name': 'envoy.file_access_log', - 'config': { + 'typed_config': { + '@type': 'type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog', 'path': self.config.ir.ambassador_module.envoy_log_path, 'format': log_format + '\n' } @@ -788,9 +791,8 @@ def __init__(self, config: 'V2Config', service_port: int) -> None: if self.config.ir.tracing: self.base_http_config["generate_request_id"] = True - self.base_http_config["tracing"] = { - "operation_name": "egress" - } + self.base_http_config["tracing"] = {} + self.traffic_direction = "OUTBOUND" req_hdrs = self.config.ir.tracing.get('tag_headers', []) @@ -886,7 +888,10 @@ def finalize(self) -> None: filter_chain["filters"] = [ { "name": "envoy.http_connection_manager", - "config": http_config + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", + **http_config + } } ] @@ -903,7 +908,8 @@ def as_dict(self) -> dict: "name": self.name, "address": self.address, "filter_chains": self.filter_chains, - "listener_filters": self.listener_filters + "listener_filters": self.listener_filters, + "traffic_direction": self.traffic_direction } def pretty(self) -> dict: diff --git a/python/ambassador/envoy/v2/v2route.py b/python/ambassador/envoy/v2/v2route.py index fe7986b445..e9dc60370e 100644 --- a/python/ambassador/envoy/v2/v2route.py +++ b/python/ambassador/envoy/v2/v2route.py @@ -120,10 +120,14 @@ def __init__(self, config: 'V2Config', group: IRHTTPMappingGroup, mapping: IRBas request_headers_to_remove = group.get('remove_request_headers', None) if request_headers_to_remove: + if type(request_headers_to_remove) != list: + request_headers_to_remove = [ request_headers_to_remove ] self['request_headers_to_remove'] = request_headers_to_remove response_headers_to_remove = group.get('remove_response_headers', None) if response_headers_to_remove: + if type(response_headers_to_remove) != list: + response_headers_to_remove = [ response_headers_to_remove ] self['response_headers_to_remove'] = response_headers_to_remove host_redirect = group.get('host_redirect', None) diff --git a/python/ambassador/ir/ircors.py b/python/ambassador/ir/ircors.py index d553bbb407..e0d5c5a7e5 100644 --- a/python/ambassador/ir/ircors.py +++ b/python/ambassador/ir/ircors.py @@ -28,18 +28,15 @@ def __init__(self, ir: 'IR', aconf: Config, def setup(self, ir: 'IR', aconf: Config) -> bool: # 'origins' cannot be treated like other keys, because if it's a # list, then it remains as is, but if it's a string, then it's - # converted to a list + # converted to a list. It has already been validated by the + # JSON schema to either be a string or a list of strings. origins = self.pop('origins', None) if origins is not None: - if type(origins) is list: - self.allow_origin = origins - elif type(origins) is str: - self.allow_origin = origins.split(',') - else: - self.post_error(RichStatus.fromError("invalid CORS origin - {}".format(origins), - module=self)) - return False + if type(origins) is not list: + origins = origins.split(',') + + self.allow_origin_string_match = [{'exact': origin} for origin in origins] for from_key, to_key in [ ( 'max_age', 'max_age' ), ( 'credentials', 'allow_credentials' ), diff --git a/python/tests/gold/acceptancegrpcbridgetest/bootstrap-ads.json b/python/tests/gold/acceptancegrpcbridgetest/bootstrap-ads.json index d7ce34c711..a9a0bae74b 100644 --- a/python/tests/gold/acceptancegrpcbridgetest/bootstrap-ads.json +++ b/python/tests/gold/acceptancegrpcbridgetest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "acceptancegrpcbridgetest-default", "id": "test-id" diff --git a/python/tests/gold/acceptancegrpcbridgetest/snapshots/econf.json b/python/tests/gold/acceptancegrpcbridgetest/snapshots/econf.json index b9d6f76621..6b9ac537be 100644 --- a/python/tests/gold/acceptancegrpcbridgetest/snapshots/econf.json +++ b/python/tests/gold/acceptancegrpcbridgetest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -71,14 +84,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -289,15 +305,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/acceptancegrpcbridgetest/snapshots/snapshot.yaml b/python/tests/gold/acceptancegrpcbridgetest/snapshots/snapshot.yaml index 35bb544c29..152b6debd6 100644 --- a/python/tests/gold/acceptancegrpcbridgetest/snapshots/snapshot.yaml +++ b/python/tests/gold/acceptancegrpcbridgetest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n enable_grpc_http11_bridge: True\nambassador_id: acceptancegrpcbridgetest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\ngrpc: True\nprefix: /echo.EchoService/\nrewrite: /echo.EchoService/\nname: acceptancegrpcbridgetest-egrpc\nservice: acceptancegrpcbridgetest-egrpc\nambassador_id: acceptancegrpcbridgetest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n enable_grpc_http11_bridge: True\\nambassador_id: acceptancegrpcbridgetest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\ngrpc: True\\nprefix: /echo.EchoService/\\nrewrite: /echo.EchoService/\\nname: acceptancegrpcbridgetest-egrpc\\nservice: acceptancegrpcbridgetest-egrpc\\nambassador_id: acceptancegrpcbridgetest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"acceptancegrpcbridgetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcbridgetest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"acceptancegrpcbridgetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:40Z", + "creationTimestamp": "2020-02-19T23:20:03Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "acceptancegrpcbridgetest", @@ -31,24 +31,24 @@ }, "name": "acceptancegrpcbridgetest", "namespace": "default", - "resourceVersion": "36428", + "resourceVersion": "55539", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcbridgetest", - "uid": "0e2e9128-4794-11ea-829a-062d8f98984d" + "uid": "5b9c24d3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.204.230", + "clusterIP": "10.97.176.134", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31300, + "nodePort": 30134, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30828, + "nodePort": 30870, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcbridgetest\",\"scope\":\"AmbassadorTest\",\"service\":\"acceptancegrpcbridgetest-admin\"},\"name\":\"acceptancegrpcbridgetest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"acceptancegrpcbridgetest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"acceptancegrpcbridgetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:40Z", + "creationTimestamp": "2020-02-19T23:20:03Z", "labels": { "kat-ambassador-id": "acceptancegrpcbridgetest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "acceptancegrpcbridgetest-admin", "namespace": "default", - "resourceVersion": "36433", + "resourceVersion": "55543", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcbridgetest-admin", - "uid": "0e3a6f42-4794-11ea-829a-062d8f98984d" + "uid": "5ba44630-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.106.249", + "clusterIP": "10.102.188.153", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "acceptancegrpcbridgetest-admin", - "nodePort": 30266, + "nodePort": 30554, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcbridgetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcbridgetest-egrpc\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"acceptancegrpcbridgetest-egrpc\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:40Z", + "creationTimestamp": "2020-02-19T23:20:03Z", "labels": { "kat-ambassador-id": "acceptancegrpcbridgetest", "scope": "AmbassadorTest" }, "name": "acceptancegrpcbridgetest-egrpc", "namespace": "default", - "resourceVersion": "36440", + "resourceVersion": "55549", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcbridgetest-egrpc", - "uid": "0e4a0fd9-4794-11ea-829a-062d8f98984d" + "uid": "5bb22da8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.225.251", + "clusterIP": "10.98.25.17", "ports": [ { "name": "http", diff --git a/python/tests/gold/acceptancegrpctest/bootstrap-ads.json b/python/tests/gold/acceptancegrpctest/bootstrap-ads.json index d1c05e7ed7..583e84d977 100644 --- a/python/tests/gold/acceptancegrpctest/bootstrap-ads.json +++ b/python/tests/gold/acceptancegrpctest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "acceptancegrpctest-default", "id": "test-id" diff --git a/python/tests/gold/acceptancegrpctest/snapshots/econf.json b/python/tests/gold/acceptancegrpctest/snapshots/econf.json index f160375957..8b1312948f 100644 --- a/python/tests/gold/acceptancegrpctest/snapshots/econf.json +++ b/python/tests/gold/acceptancegrpctest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -71,14 +84,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -285,15 +301,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/acceptancegrpctest/snapshots/snapshot.yaml b/python/tests/gold/acceptancegrpctest/snapshots/snapshot.yaml index b463b6fda9..640e08de6b 100644 --- a/python/tests/gold/acceptancegrpctest/snapshots/snapshot.yaml +++ b/python/tests/gold/acceptancegrpctest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\ngrpc: True\nprefix: /echo.EchoService/\nrewrite: /echo.EchoService/\nname: acceptancegrpctest-egrpc\nservice: acceptancegrpctest-egrpc\nambassador_id: acceptancegrpctest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\ngrpc: True\\nprefix: /echo.EchoService/\\nrewrite: /echo.EchoService/\\nname: acceptancegrpctest-egrpc\\nservice: acceptancegrpctest-egrpc\\nambassador_id: acceptancegrpctest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"acceptancegrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpctest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"acceptancegrpctest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:20:00Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "acceptancegrpctest", @@ -31,24 +31,24 @@ }, "name": "acceptancegrpctest", "namespace": "default", - "resourceVersion": "36369", + "resourceVersion": "55458", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpctest", - "uid": "0d6e1e55-4794-11ea-829a-062d8f98984d" + "uid": "59926d1b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.15.211", + "clusterIP": "10.99.182.201", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31635, + "nodePort": 30468, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30645, + "nodePort": 30582, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpctest\",\"scope\":\"AmbassadorTest\",\"service\":\"acceptancegrpctest-admin\"},\"name\":\"acceptancegrpctest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"acceptancegrpctest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"acceptancegrpctest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:20:00Z", "labels": { "kat-ambassador-id": "acceptancegrpctest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "acceptancegrpctest-admin", "namespace": "default", - "resourceVersion": "36375", + "resourceVersion": "55462", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpctest-admin", - "uid": "0d7cd1e8-4794-11ea-829a-062d8f98984d" + "uid": "599b6c0c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.92.114", + "clusterIP": "10.108.58.11", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "acceptancegrpctest-admin", - "nodePort": 30794, + "nodePort": 31334, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpctest-egrpc\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"acceptancegrpctest-egrpc\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:20:00Z", "labels": { "kat-ambassador-id": "acceptancegrpctest", "scope": "AmbassadorTest" }, "name": "acceptancegrpctest-egrpc", "namespace": "default", - "resourceVersion": "36381", + "resourceVersion": "55469", "selfLink": "/api/v1/namespaces/default/services/acceptancegrpctest-egrpc", - "uid": "0d8d422d-4794-11ea-829a-062d8f98984d" + "uid": "59a8ab1c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.42.141", + "clusterIP": "10.107.100.112", "ports": [ { "name": "http", diff --git a/python/tests/gold/acceptancegrpcwebtest/bootstrap-ads.json b/python/tests/gold/acceptancegrpcwebtest/bootstrap-ads.json index 815da5d277..2dc09674b5 100644 --- a/python/tests/gold/acceptancegrpcwebtest/bootstrap-ads.json +++ b/python/tests/gold/acceptancegrpcwebtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "acceptancegrpcwebtest-default", "id": "test-id" diff --git a/python/tests/gold/acceptancegrpcwebtest/snapshots/econf.json b/python/tests/gold/acceptancegrpcwebtest/snapshots/econf.json index 5812c70168..0801d92407 100644 --- a/python/tests/gold/acceptancegrpcwebtest/snapshots/econf.json +++ b/python/tests/gold/acceptancegrpcwebtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -71,14 +84,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -289,15 +305,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/acceptancegrpcwebtest/snapshots/snapshot.yaml b/python/tests/gold/acceptancegrpcwebtest/snapshots/snapshot.yaml index 3609a5608e..547428fdb3 100644 --- a/python/tests/gold/acceptancegrpcwebtest/snapshots/snapshot.yaml +++ b/python/tests/gold/acceptancegrpcwebtest/snapshots/snapshot.yaml @@ -20,40 +20,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcwebtest-egrpc\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"acceptancegrpcwebtest-egrpc\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\",\"service\":\"acceptancegrpcwebtest-admin\"},\"name\":\"acceptancegrpcwebtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"acceptancegrpcwebtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"acceptancegrpcwebtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { "kat-ambassador-id": "acceptancegrpcwebtest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "acceptancegrpcwebtest-admin" }, - "name": "acceptancegrpcwebtest-egrpc", + "name": "acceptancegrpcwebtest-admin", "namespace": "default", - "resourceVersion": "36465", - "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest-egrpc", - "uid": "0e86b072-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55568", + "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest-admin", + "uid": "5bde39bc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.31.251", + "clusterIP": "10.97.42.91", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "port": 443, + "name": "acceptancegrpcwebtest-admin", + "nodePort": 32631, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { - "backend": "acceptancegrpcwebtest-egrpc" + "service": "acceptancegrpcwebtest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -64,45 +61,40 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n enable_grpc_web: True\nambassador_id: acceptancegrpcwebtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\ngrpc: True\nprefix: /echo.EchoService/\nrewrite: /echo.EchoService/\nname: acceptancegrpcwebtest-egrpc\nservice: acceptancegrpcwebtest-egrpc\nambassador_id: acceptancegrpcwebtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n enable_grpc_web: True\\nambassador_id: acceptancegrpcwebtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\ngrpc: True\\nprefix: /echo.EchoService/\\nrewrite: /echo.EchoService/\\nname: acceptancegrpcwebtest-egrpc\\nservice: acceptancegrpcwebtest-egrpc\\nambassador_id: acceptancegrpcwebtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcwebtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"acceptancegrpcwebtest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcwebtest-egrpc\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"acceptancegrpcwebtest-egrpc\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "acceptancegrpcwebtest", "scope": "AmbassadorTest" }, - "name": "acceptancegrpcwebtest", + "name": "acceptancegrpcwebtest-egrpc", "namespace": "default", - "resourceVersion": "36455", - "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest", - "uid": "0e705cfa-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55577", + "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest-egrpc", + "uid": "5bf55dd4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.72.128", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.96.73.82", "ports": [ { "name": "http", - "nodePort": 32421, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32025, "port": 443, "protocol": "TCP", "targetPort": 8443 } ], "selector": { - "service": "acceptancegrpcwebtest" + "backend": "acceptancegrpcwebtest-egrpc" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -113,30 +105,38 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\",\"service\":\"acceptancegrpcwebtest-admin\"},\"name\":\"acceptancegrpcwebtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"acceptancegrpcwebtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"acceptancegrpcwebtest\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n enable_grpc_web: True\nambassador_id: acceptancegrpcwebtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\ngrpc: True\nprefix: /echo.EchoService/\nrewrite: /echo.EchoService/\nname: acceptancegrpcwebtest-egrpc\nservice: acceptancegrpcwebtest-egrpc\nambassador_id: acceptancegrpcwebtest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n enable_grpc_web: True\\nambassador_id: acceptancegrpcwebtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\ngrpc: True\\nprefix: /echo.EchoService/\\nrewrite: /echo.EchoService/\\nname: acceptancegrpcwebtest-egrpc\\nservice: acceptancegrpcwebtest-egrpc\\nambassador_id: acceptancegrpcwebtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"acceptancegrpcwebtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"acceptancegrpcwebtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"acceptancegrpcwebtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "acceptancegrpcwebtest", - "scope": "AmbassadorTest", - "service": "acceptancegrpcwebtest-admin" + "scope": "AmbassadorTest" }, - "name": "acceptancegrpcwebtest-admin", + "name": "acceptancegrpcwebtest", "namespace": "default", - "resourceVersion": "36459", - "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest-admin", - "uid": "0e78309a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55564", + "selfLink": "/api/v1/namespaces/default/services/acceptancegrpcwebtest", + "uid": "5bd5acc9-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.229.197", + "clusterIP": "10.104.111.122", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "acceptancegrpcwebtest-admin", - "nodePort": 32237, - "port": 8877, + "name": "http", + "nodePort": 31477, + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "nodePort": 31809, + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { diff --git a/python/tests/gold/ambassadoridtest/bootstrap-ads.json b/python/tests/gold/ambassadoridtest/bootstrap-ads.json index 6846e94d19..baea0132a7 100644 --- a/python/tests/gold/ambassadoridtest/bootstrap-ads.json +++ b/python/tests/gold/ambassadoridtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "ambassadoridtest-default", "id": "test-id" diff --git a/python/tests/gold/ambassadoridtest/snapshots/econf.json b/python/tests/gold/ambassadoridtest/snapshots/econf.json index dc7210d0fb..6b29ac6c29 100644 --- a/python/tests/gold/ambassadoridtest/snapshots/econf.json +++ b/python/tests/gold/ambassadoridtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -372,15 +388,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/ambassadoridtest/snapshots/snapshot.yaml b/python/tests/gold/ambassadoridtest/snapshots/snapshot.yaml index 180892bc3f..78cacc0a8e 100644 --- a/python/tests/gold/ambassadoridtest/snapshots/snapshot.yaml +++ b/python/tests/gold/ambassadoridtest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n use_ambassador_namespace_for_service_resolution: true\nambassador_id: ambassadoridtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n use_ambassador_namespace_for_service_resolution: true\\nambassador_id: ambassadoridtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"ambassadoridtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ambassadoridtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"ambassadoridtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:33Z", + "creationTimestamp": "2020-02-19T23:19:54Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "ambassadoridtest", @@ -31,24 +31,24 @@ }, "name": "ambassadoridtest", "namespace": "default", - "resourceVersion": "36033", + "resourceVersion": "55122", "selfLink": "/api/v1/namespaces/default/services/ambassadoridtest", - "uid": "0a219f64-4794-11ea-829a-062d8f98984d" + "uid": "565b8c5f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.165.149", + "clusterIP": "10.107.139.134", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32672, + "nodePort": 31458, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31867, + "nodePort": 31259, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ambassadoridtest\",\"scope\":\"AmbassadorTest\",\"service\":\"ambassadoridtest-admin\"},\"name\":\"ambassadoridtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"ambassadoridtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"ambassadoridtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:33Z", + "creationTimestamp": "2020-02-19T23:19:54Z", "labels": { "kat-ambassador-id": "ambassadoridtest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "ambassadoridtest-admin", "namespace": "default", - "resourceVersion": "36037", + "resourceVersion": "55126", "selfLink": "/api/v1/namespaces/default/services/ambassadoridtest-admin", - "uid": "0a28e1df-4794-11ea-829a-062d8f98984d" + "uid": "56624b2d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.191.19", + "clusterIP": "10.104.68.34", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "ambassadoridtest-admin", - "nodePort": 31050, + "nodePort": 32385, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -113,19 +113,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: ambassadoridtest-findme\nprefix: /findme/\nservice: ambassadoridtest-http\nambassador_id: ambassadoridtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: ambassadoridtest-findme-array\nprefix: /findme-array/\nservice: ambassadoridtest-http\nambassador_id: [ambassadoridtest, missme]\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: ambassadoridtest-findme-array2\nprefix: /findme-array2/\nservice: ambassadoridtest-http\nambassador_id: [missme, ambassadoridtest]\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: ambassadoridtest-missme\nprefix: /missme/\nservice: ambassadoridtest-http\nambassador_id: missme\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: ambassadoridtest-missme-array\nprefix: /missme-array/\nservice: ambassadoridtest-http\nambassador_id: [missme1, missme2]\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ambassadoridtest-findme\\nprefix: /findme/\\nservice: ambassadoridtest-http\\nambassador_id: ambassadoridtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ambassadoridtest-findme-array\\nprefix: /findme-array/\\nservice: ambassadoridtest-http\\nambassador_id: [ambassadoridtest, missme]\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ambassadoridtest-findme-array2\\nprefix: /findme-array2/\\nservice: ambassadoridtest-http\\nambassador_id: [missme, ambassadoridtest]\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ambassadoridtest-missme\\nprefix: /missme/\\nservice: ambassadoridtest-http\\nambassador_id: missme\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ambassadoridtest-missme-array\\nprefix: /missme-array/\\nservice: ambassadoridtest-http\\nambassador_id: [missme1, missme2]\\n\"},\"labels\":{\"kat-ambassador-id\":\"ambassadoridtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ambassadoridtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:54Z", "labels": { "kat-ambassador-id": "ambassadoridtest", "scope": "AmbassadorTest" }, "name": "ambassadoridtest-http", "namespace": "default", - "resourceVersion": "36044", + "resourceVersion": "55133", "selfLink": "/api/v1/namespaces/default/services/ambassadoridtest-http", - "uid": "0a3669f1-4794-11ea-829a-062d8f98984d" + "uid": "566f229b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.3.68", + "clusterIP": "10.102.211.236", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationgrpctest/bootstrap-ads.json b/python/tests/gold/authenticationgrpctest/bootstrap-ads.json index 5b5b5df53b..7b9440e624 100644 --- a/python/tests/gold/authenticationgrpctest/bootstrap-ads.json +++ b/python/tests/gold/authenticationgrpctest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationgrpctest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationgrpctest/snapshots/econf.json b/python/tests/gold/authenticationgrpctest/snapshots/econf.json index fdf82cfae4..cffebf5554 100644 --- a/python/tests/gold/authenticationgrpctest/snapshots/econf.json +++ b/python/tests/gold/authenticationgrpctest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -98,14 +111,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -324,15 +340,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationgrpctest/snapshots/snapshot.yaml b/python/tests/gold/authenticationgrpctest/snapshots/snapshot.yaml index 5842366cd7..79c1c67c46 100644 --- a/python/tests/gold/authenticationgrpctest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationgrpctest/snapshots/snapshot.yaml @@ -20,38 +20,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationgrpctest-agrpc-auth\nauth_service: \"authenticationgrpctest-agrpc-auth\"\ntimeout_ms: 5000\nproto: grpc\nambassador_id: authenticationgrpctest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationgrpctest-http\nprefix: /target/\nservice: authenticationgrpctest-http\nambassador_id: authenticationgrpctest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationgrpctest-agrpc-auth\\nauth_service: \\\"authenticationgrpctest-agrpc-auth\\\"\\ntimeout_ms: 5000\\nproto: grpc\\nambassador_id: authenticationgrpctest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationgrpctest-http\\nprefix: /target/\\nservice: authenticationgrpctest-http\\nambassador_id: authenticationgrpctest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationgrpctest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationgrpctest-admin\"},\"name\":\"authenticationgrpctest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationgrpctest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationgrpctest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationgrpctest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "authenticationgrpctest-admin" }, - "name": "authenticationgrpctest", + "name": "authenticationgrpctest-admin", "namespace": "default", - "resourceVersion": "36157", - "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest", - "uid": "0b3889c2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55250", + "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-admin", + "uid": "576a2836-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.115.15", + "clusterIP": "10.99.110.91", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 30691, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 32298, - "port": 443, + "name": "authenticationgrpctest-admin", + "nodePort": 32326, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -69,37 +61,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationgrpctest-admin\"},\"name\":\"authenticationgrpctest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationgrpctest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationgrpctest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest-agrpc-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"authenticationgrpctest-agrpc-auth\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { "kat-ambassador-id": "authenticationgrpctest", - "scope": "AmbassadorTest", - "service": "authenticationgrpctest-admin" + "scope": "AmbassadorTest" }, - "name": "authenticationgrpctest-admin", + "name": "authenticationgrpctest-agrpc-auth", "namespace": "default", - "resourceVersion": "36161", - "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-admin", - "uid": "0b426b2b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55261", + "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-agrpc-auth", + "uid": "578570b4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.60.39", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.108.253.215", "ports": [ { - "name": "authenticationgrpctest-admin", - "nodePort": 30775, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { - "service": "authenticationgrpctest" + "backend": "authenticationgrpctest-agrpc-auth" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -110,37 +105,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest-agrpc-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"authenticationgrpctest-agrpc-auth\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8085},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8448}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { "kat-ambassador-id": "authenticationgrpctest", "scope": "AmbassadorTest" }, - "name": "authenticationgrpctest-agrpc-auth", + "name": "authenticationgrpctest-http", "namespace": "default", - "resourceVersion": "36174", - "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-agrpc-auth", - "uid": "0b64ed99-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55258", + "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-http", + "uid": "5779deb3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.224.156", + "clusterIP": "10.100.30.53", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8085 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8448 } ], "selector": { - "backend": "authenticationgrpctest-agrpc-auth" + "backend": "superpod-default" }, "sessionAffinity": "None", "type": "ClusterIP" @@ -154,40 +149,45 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8085},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8448}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationgrpctest-agrpc-auth\nauth_service: \"authenticationgrpctest-agrpc-auth\"\ntimeout_ms: 5000\nproto: grpc\nambassador_id: authenticationgrpctest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationgrpctest-http\nprefix: /target/\nservice: authenticationgrpctest-http\nambassador_id: authenticationgrpctest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationgrpctest-agrpc-auth\\nauth_service: \\\"authenticationgrpctest-agrpc-auth\\\"\\ntimeout_ms: 5000\\nproto: grpc\\nambassador_id: authenticationgrpctest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationgrpctest-http\\nprefix: /target/\\nservice: authenticationgrpctest-http\\nambassador_id: authenticationgrpctest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationgrpctest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationgrpctest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationgrpctest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationgrpctest", "scope": "AmbassadorTest" }, - "name": "authenticationgrpctest-http", + "name": "authenticationgrpctest", "namespace": "default", - "resourceVersion": "36170", - "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest-http", - "uid": "0b5a55cf-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55246", + "selfLink": "/api/v1/namespaces/default/services/authenticationgrpctest", + "uid": "57625147-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.236.150", + "clusterIP": "10.99.10.142", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 30126, "port": 80, "protocol": "TCP", - "targetPort": 8085 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30726, "port": 443, "protocol": "TCP", - "targetPort": 8448 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "authenticationgrpctest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/authenticationheaderrouting/bootstrap-ads.json b/python/tests/gold/authenticationheaderrouting/bootstrap-ads.json index ddf19811a9..6bda4ca6b6 100644 --- a/python/tests/gold/authenticationheaderrouting/bootstrap-ads.json +++ b/python/tests/gold/authenticationheaderrouting/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationheaderrouting-default", "id": "test-id" diff --git a/python/tests/gold/authenticationheaderrouting/snapshots/econf.json b/python/tests/gold/authenticationheaderrouting/snapshots/econf.json index 445c3fea48..bc07efe265 100644 --- a/python/tests/gold/authenticationheaderrouting/snapshots/econf.json +++ b/python/tests/gold/authenticationheaderrouting/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -124,14 +137,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -488,15 +504,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationheaderrouting/snapshots/snapshot.yaml b/python/tests/gold/authenticationheaderrouting/snapshots/snapshot.yaml index cdd3e1ae4e..61eb55e003 100644 --- a/python/tests/gold/authenticationheaderrouting/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationheaderrouting/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationheaderrouting-headerroutingauth\nauth_service: \"authenticationheaderrouting-headerroutingauth\"\nproto: http\npath_prefix: \"\"\ntimeout_ms: 5000\nallowed_authorization_headers:\n- X-Auth-Route\n- Extauth\nambassador_id: authenticationheaderrouting\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationheaderrouting-headerroutingauth\\nauth_service: \\\"authenticationheaderrouting-headerroutingauth\\\"\\nproto: http\\npath_prefix: \\\"\\\"\\ntimeout_ms: 5000\\nallowed_authorization_headers:\\n- X-Auth-Route\\n- Extauth\\nambassador_id: authenticationheaderrouting\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationheaderrouting\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationheaderrouting\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationheaderrouting\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationheaderrouting", @@ -31,24 +31,24 @@ }, "name": "authenticationheaderrouting", "namespace": "default", - "resourceVersion": "36554", + "resourceVersion": "55658", "selfLink": "/api/v1/namespaces/default/services/authenticationheaderrouting", - "uid": "0f6d0f35-4794-11ea-829a-062d8f98984d" + "uid": "5cbf95ea-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.117.39", + "clusterIP": "10.109.51.216", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32171, + "nodePort": 30252, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30598, + "nodePort": 32162, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationheaderrouting\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationheaderrouting-admin\"},\"name\":\"authenticationheaderrouting-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationheaderrouting-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationheaderrouting\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "authenticationheaderrouting", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "authenticationheaderrouting-admin", "namespace": "default", - "resourceVersion": "36558", + "resourceVersion": "55663", "selfLink": "/api/v1/namespaces/default/services/authenticationheaderrouting-admin", - "uid": "0f7890c6-4794-11ea-829a-062d8f98984d" + "uid": "5cc8aac5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.232.9", + "clusterIP": "10.103.42.212", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationheaderrouting-admin", - "nodePort": 30438, + "nodePort": 31771, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationheaderrouting\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationheaderrouting-headerroutingauth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":80},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":443}],\"selector\":{\"backend\":\"authenticationheaderrouting-headerroutingauth\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:43Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "authenticationheaderrouting", "scope": "AmbassadorTest" }, "name": "authenticationheaderrouting-headerroutingauth", "namespace": "default", - "resourceVersion": "36574", + "resourceVersion": "55677", "selfLink": "/api/v1/namespaces/default/services/authenticationheaderrouting-headerroutingauth", - "uid": "0f9e5afc-4794-11ea-829a-062d8f98984d" + "uid": "5cec61a9-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.157.59", + "clusterIP": "10.104.32.137", "ports": [ { "name": "http", @@ -157,19 +157,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: AuthenticationHeaderRouting-target1\nprefix: /target/\nservice: http://authenticationheaderrouting-http-target1\nambassador_id: authenticationheaderrouting\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: AuthenticationHeaderRouting-target1\\nprefix: /target/\\nservice: http://authenticationheaderrouting-http-target1\\nambassador_id: authenticationheaderrouting\\n\"},\"labels\":{\"kat-ambassador-id\":\"authenticationheaderrouting\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationheaderrouting-http-target1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8098},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8461}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "authenticationheaderrouting", "scope": "AmbassadorTest" }, "name": "authenticationheaderrouting-http-target1", "namespace": "default", - "resourceVersion": "36565", + "resourceVersion": "55669", "selfLink": "/api/v1/namespaces/default/services/authenticationheaderrouting-http-target1", - "uid": "0f87d5ec-4794-11ea-829a-062d8f98984d" + "uid": "5cd80eee-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.222.180", + "clusterIP": "10.97.105.164", "ports": [ { "name": "http", @@ -202,19 +202,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: AuthenticationHeaderRouting-target2\nprefix: /target/\nservice: http://authenticationheaderrouting-http-target2\nheaders:\n X-Auth-Route: Route\nambassador_id: authenticationheaderrouting\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: AuthenticationHeaderRouting-target2\\nprefix: /target/\\nservice: http://authenticationheaderrouting-http-target2\\nheaders:\\n X-Auth-Route: Route\\nambassador_id: authenticationheaderrouting\\n\"},\"labels\":{\"kat-ambassador-id\":\"authenticationheaderrouting\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationheaderrouting-http-target2\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8099},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8462}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:43Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "authenticationheaderrouting", "scope": "AmbassadorTest" }, "name": "authenticationheaderrouting-http-target2", "namespace": "default", - "resourceVersion": "36569", + "resourceVersion": "55672", "selfLink": "/api/v1/namespaces/default/services/authenticationheaderrouting-http-target2", - "uid": "0f931568-4794-11ea-829a-062d8f98984d" + "uid": "5ce252de-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.75.32", + "clusterIP": "10.100.25.224", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationhttpbufferedtest/bootstrap-ads.json b/python/tests/gold/authenticationhttpbufferedtest/bootstrap-ads.json index 91e492b7da..e4bd4c488d 100644 --- a/python/tests/gold/authenticationhttpbufferedtest/bootstrap-ads.json +++ b/python/tests/gold/authenticationhttpbufferedtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationhttpbufferedtest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationhttpbufferedtest/snapshots/econf.json b/python/tests/gold/authenticationhttpbufferedtest/snapshots/econf.json index 152670738a..52a50a0836 100644 --- a/python/tests/gold/authenticationhttpbufferedtest/snapshots/econf.json +++ b/python/tests/gold/authenticationhttpbufferedtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -80,18 +93,22 @@ ] }, "name": "cluster_extauth_authenticationhttpbuffer-0", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-buffered-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-buffered-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-buffered-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-buffered-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -111,14 +128,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -520,15 +540,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationhttpbufferedtest/snapshots/snapshot.yaml b/python/tests/gold/authenticationhttpbufferedtest/snapshots/snapshot.yaml index 4c9f1db627..935788f03c 100644 --- a/python/tests/gold/authenticationhttpbufferedtest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationhttpbufferedtest/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpbufferedtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"auth-buffered-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttpbufferedtest", "scope": "AmbassadorTest" }, "name": "auth-buffered-secret", "namespace": "default", - "resourceVersion": "36228", + "resourceVersion": "55316", "selfLink": "/api/v1/namespaces/default/secrets/auth-buffered-secret", - "uid": "0bfa8b2b-4794-11ea-829a-062d8f98984d" + "uid": "58146207-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n add_linkerd_headers: true\n buffer:\n max_request_bytes: 16384\nambassador_id: authenticationhttpbufferedtest\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: AuthenticationHTTPBufferedTest-same-context-1\nsecret: auth-buffered-secret\nambassador_id: authenticationhttpbufferedtest\n---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationhttpbufferedtest-http-auth\nauth_service: \"authenticationhttpbufferedtest-http-auth\"\npath_prefix: \"/extauth\"\ntimeout_ms: 5000\ntls: AuthenticationHTTPBufferedTest-same-context-1\nallowed_request_headers:\n- X-Foo\n- X-Bar\n- Requested-Status\n- Requested-Header\n- Requested-Cookie\n- Location\nallowed_authorization_headers:\n- X-Foo\n- Set-Cookie\ninclude_body:\n max_bytes: 4096\n allow_partial: true\nambassador_id: authenticationhttpbufferedtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationhttpbufferedtest-http\nprefix: /target/\nservice: authenticationhttpbufferedtest-http\nambassador_id: authenticationhttpbufferedtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n add_linkerd_headers: true\\n buffer:\\n max_request_bytes: 16384\\nambassador_id: authenticationhttpbufferedtest\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: AuthenticationHTTPBufferedTest-same-context-1\\nsecret: auth-buffered-secret\\nambassador_id: authenticationhttpbufferedtest\\n---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationhttpbufferedtest-http-auth\\nauth_service: \\\"authenticationhttpbufferedtest-http-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 5000\\ntls: AuthenticationHTTPBufferedTest-same-context-1\\nallowed_request_headers:\\n- X-Foo\\n- X-Bar\\n- Requested-Status\\n- Requested-Header\\n- Requested-Cookie\\n- Location\\nallowed_authorization_headers:\\n- X-Foo\\n- Set-Cookie\\ninclude_body:\\n max_bytes: 4096\\n allow_partial: true\\nambassador_id: authenticationhttpbufferedtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationhttpbufferedtest-http\\nprefix: /target/\\nservice: authenticationhttpbufferedtest-http\\nambassador_id: authenticationhttpbufferedtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationhttpbufferedtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpbufferedtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationhttpbufferedtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationhttpbufferedtest", @@ -57,24 +57,24 @@ }, "name": "authenticationhttpbufferedtest", "namespace": "default", - "resourceVersion": "36218", + "resourceVersion": "55306", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpbufferedtest", - "uid": "0be0287e-4794-11ea-829a-062d8f98984d" + "uid": "57fa319f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.252.178", + "clusterIP": "10.111.15.230", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31120, + "nodePort": 32210, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30391, + "nodePort": 32523, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpbufferedtest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationhttpbufferedtest-admin\"},\"name\":\"authenticationhttpbufferedtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationhttpbufferedtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationhttpbufferedtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttpbufferedtest", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "authenticationhttpbufferedtest-admin", "namespace": "default", - "resourceVersion": "36223", + "resourceVersion": "55311", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpbufferedtest-admin", - "uid": "0bece7c1-4794-11ea-829a-062d8f98984d" + "uid": "5806afbc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.32.116", + "clusterIP": "10.111.2.105", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationhttpbufferedtest-admin", - "nodePort": 30094, + "nodePort": 31721, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -138,19 +138,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpbufferedtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpbufferedtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8088},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8451}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpbufferedtest", "scope": "AmbassadorTest" }, "name": "authenticationhttpbufferedtest-http", "namespace": "default", - "resourceVersion": "36230", + "resourceVersion": "55320", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpbufferedtest-http", - "uid": "0c04fa73-4794-11ea-829a-062d8f98984d" + "uid": "583c22f6-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.226.228", + "clusterIP": "10.97.152.178", "ports": [ { "name": "http", @@ -182,19 +182,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpbufferedtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpbufferedtest-http-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8089},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8452}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpbufferedtest", "scope": "AmbassadorTest" }, "name": "authenticationhttpbufferedtest-http-auth", "namespace": "default", - "resourceVersion": "36234", + "resourceVersion": "55325", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpbufferedtest-http-auth", - "uid": "0c0cf2a8-4794-11ea-829a-062d8f98984d" + "uid": "584348a0-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.6.63", + "clusterIP": "10.108.56.213", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationhttpfailuremodeallowtest/bootstrap-ads.json b/python/tests/gold/authenticationhttpfailuremodeallowtest/bootstrap-ads.json index a4e2838377..2d623fb566 100644 --- a/python/tests/gold/authenticationhttpfailuremodeallowtest/bootstrap-ads.json +++ b/python/tests/gold/authenticationhttpfailuremodeallowtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationhttpfailuremodeallowtest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/econf.json b/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/econf.json index 31a9340371..abbabc47a1 100644 --- a/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/econf.json +++ b/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -80,18 +93,22 @@ ] }, "name": "cluster_extauth_authenticationhttpfailur-0", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-failure-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-failure-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-failure-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-failure-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -111,14 +128,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -416,15 +436,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/snapshot.yaml b/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/snapshot.yaml index fd2fa87886..7225b5e488 100644 --- a/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationhttpfailuremodeallowtest/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpfailuremodeallowtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"auth-failure-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpfailuremodeallowtest", "scope": "AmbassadorTest" }, "name": "auth-failure-secret", "namespace": "default", - "resourceVersion": "36258", + "resourceVersion": "55347", "selfLink": "/api/v1/namespaces/default/secrets/auth-failure-secret", - "uid": "0c49923b-4794-11ea-829a-062d8f98984d" + "uid": "5876dd66-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TLSContext\nname: AuthenticationHTTPFailureModeAllowTest-failure-context\nsecret: auth-failure-secret\nambassador_id: authenticationhttpfailuremodeallowtest\n---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationhttpfailuremodeallowtest-http-auth\nauth_service: \"authenticationhttpfailuremodeallowtest-http-auth\"\npath_prefix: \"/extauth\"\ntimeout_ms: 5000\ntls: AuthenticationHTTPFailureModeAllowTest-failure-context\nallowed_request_headers:\n- Requested-Status\n- Requested-Header\nfailure_mode_allow: true\nambassador_id: authenticationhttpfailuremodeallowtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationhttpfailuremodeallowtest-http\nprefix: /target/\nservice: authenticationhttpfailuremodeallowtest-http\nambassador_id: authenticationhttpfailuremodeallowtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: AuthenticationHTTPFailureModeAllowTest-failure-context\\nsecret: auth-failure-secret\\nambassador_id: authenticationhttpfailuremodeallowtest\\n---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationhttpfailuremodeallowtest-http-auth\\nauth_service: \\\"authenticationhttpfailuremodeallowtest-http-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 5000\\ntls: AuthenticationHTTPFailureModeAllowTest-failure-context\\nallowed_request_headers:\\n- Requested-Status\\n- Requested-Header\\nfailure_mode_allow: true\\nambassador_id: authenticationhttpfailuremodeallowtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationhttpfailuremodeallowtest-http\\nprefix: /target/\\nservice: authenticationhttpfailuremodeallowtest-http\\nambassador_id: authenticationhttpfailuremodeallowtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationhttpfailuremodeallowtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpfailuremodeallowtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationhttpfailuremodeallowtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationhttpfailuremodeallowtest", @@ -57,24 +57,24 @@ }, "name": "authenticationhttpfailuremodeallowtest", "namespace": "default", - "resourceVersion": "36247", + "resourceVersion": "55337", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpfailuremodeallowtest", - "uid": "0c2eeded-4794-11ea-829a-062d8f98984d" + "uid": "58615ed8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.19.87", + "clusterIP": "10.100.47.253", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30408, + "nodePort": 32032, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31269, + "nodePort": 32393, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpfailuremodeallowtest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationhttpfailuremodeallowtest-admin\"},\"name\":\"authenticationhttpfailuremodeallowtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationhttpfailuremodeallowtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationhttpfailuremodeallowtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpfailuremodeallowtest", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "authenticationhttpfailuremodeallowtest-admin", "namespace": "default", - "resourceVersion": "36251", + "resourceVersion": "55341", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpfailuremodeallowtest-admin", - "uid": "0c390648-4794-11ea-829a-062d8f98984d" + "uid": "586a11dd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.97.240", + "clusterIP": "10.110.3.248", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationhttpfailuremodeallowtest-admin", - "nodePort": 31910, + "nodePort": 30348, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -138,19 +138,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpfailuremodeallowtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpfailuremodeallowtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8090},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8453}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpfailuremodeallowtest", "scope": "AmbassadorTest" }, "name": "authenticationhttpfailuremodeallowtest-http", "namespace": "default", - "resourceVersion": "36260", + "resourceVersion": "55350", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpfailuremodeallowtest-http", - "uid": "0c5191d5-4794-11ea-829a-062d8f98984d" + "uid": "587ea3d2-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.139.194", + "clusterIP": "10.104.145.42", "ports": [ { "name": "http", @@ -182,19 +182,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttpfailuremodeallowtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttpfailuremodeallowtest-http-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8091},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8454}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationhttpfailuremodeallowtest", "scope": "AmbassadorTest" }, "name": "authenticationhttpfailuremodeallowtest-http-auth", "namespace": "default", - "resourceVersion": "36263", + "resourceVersion": "55354", "selfLink": "/api/v1/namespaces/default/services/authenticationhttpfailuremodeallowtest-http-auth", - "uid": "0c5a6042-4794-11ea-829a-062d8f98984d" + "uid": "58911d5f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.55.63", + "clusterIP": "10.98.12.220", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationhttppartialbuffertest/bootstrap-ads.json b/python/tests/gold/authenticationhttppartialbuffertest/bootstrap-ads.json index cfd3464e29..8620f7006a 100644 --- a/python/tests/gold/authenticationhttppartialbuffertest/bootstrap-ads.json +++ b/python/tests/gold/authenticationhttppartialbuffertest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationhttppartialbuffertest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationhttppartialbuffertest/snapshots/econf.json b/python/tests/gold/authenticationhttppartialbuffertest/snapshots/econf.json index 728a2f87fa..ece02725f3 100644 --- a/python/tests/gold/authenticationhttppartialbuffertest/snapshots/econf.json +++ b/python/tests/gold/authenticationhttppartialbuffertest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -80,18 +93,22 @@ ] }, "name": "cluster_extauth_authenticationhttppartia-0", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-partial-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-partial-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-partial-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/auth-partial-secret/6B4919697C5D70BB8E4A73A59DDF51A53AE24264.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -111,14 +128,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -425,15 +445,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationhttppartialbuffertest/snapshots/snapshot.yaml b/python/tests/gold/authenticationhttppartialbuffertest/snapshots/snapshot.yaml index e31b84cbcc..ceba3e28b1 100644 --- a/python/tests/gold/authenticationhttppartialbuffertest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationhttppartialbuffertest/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttppartialbuffertest\",\"scope\":\"AmbassadorTest\"},\"name\":\"auth-partial-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttppartialbuffertest", "scope": "AmbassadorTest" }, "name": "auth-partial-secret", "namespace": "default", - "resourceVersion": "36200", + "resourceVersion": "55288", "selfLink": "/api/v1/namespaces/default/secrets/auth-partial-secret", - "uid": "0ba9bba2-4794-11ea-829a-062d8f98984d" + "uid": "57c8d793-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TLSContext\nname: AuthenticationHTTPPartialBufferTest-same-context-1\nsecret: auth-partial-secret\nambassador_id: authenticationhttppartialbuffertest\n---\napiVersion: ambassador/v2\nkind: AuthService\nname: authenticationhttppartialbuffertest-http-auth\nauth_service: \"authenticationhttppartialbuffertest-http-auth\"\npath_prefix: \"/extauth\"\ntimeout_ms: 5000\ntls: AuthenticationHTTPPartialBufferTest-same-context-1\nallowed_request_headers:\n- Requested-Status\n- Requested-Header\nallowed_authorization_headers:\n- Auth-Request-Body\ninclude_body:\n max_bytes: 7\n allow_partial: true\nambassador_id: authenticationhttppartialbuffertest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationhttppartialbuffertest-http\nprefix: /target/\nservice: authenticationhttppartialbuffertest-http\nambassador_id: authenticationhttppartialbuffertest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: AuthenticationHTTPPartialBufferTest-same-context-1\\nsecret: auth-partial-secret\\nambassador_id: authenticationhttppartialbuffertest\\n---\\napiVersion: ambassador/v2\\nkind: AuthService\\nname: authenticationhttppartialbuffertest-http-auth\\nauth_service: \\\"authenticationhttppartialbuffertest-http-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 5000\\ntls: AuthenticationHTTPPartialBufferTest-same-context-1\\nallowed_request_headers:\\n- Requested-Status\\n- Requested-Header\\nallowed_authorization_headers:\\n- Auth-Request-Body\\ninclude_body:\\n max_bytes: 7\\n allow_partial: true\\nambassador_id: authenticationhttppartialbuffertest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationhttppartialbuffertest-http\\nprefix: /target/\\nservice: authenticationhttppartialbuffertest-http\\nambassador_id: authenticationhttppartialbuffertest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationhttppartialbuffertest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttppartialbuffertest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationhttppartialbuffertest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationhttppartialbuffertest", @@ -57,24 +57,24 @@ }, "name": "authenticationhttppartialbuffertest", "namespace": "default", - "resourceVersion": "36189", + "resourceVersion": "55278", "selfLink": "/api/v1/namespaces/default/services/authenticationhttppartialbuffertest", - "uid": "0b928960-4794-11ea-829a-062d8f98984d" + "uid": "57b261fa-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.203.6", + "clusterIP": "10.98.55.199", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30847, + "nodePort": 32110, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31350, + "nodePort": 32608, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttppartialbuffertest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationhttppartialbuffertest-admin\"},\"name\":\"authenticationhttppartialbuffertest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationhttppartialbuffertest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationhttppartialbuffertest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttppartialbuffertest", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "authenticationhttppartialbuffertest-admin", "namespace": "default", - "resourceVersion": "36194", + "resourceVersion": "55282", "selfLink": "/api/v1/namespaces/default/services/authenticationhttppartialbuffertest-admin", - "uid": "0b9b7bbc-4794-11ea-829a-062d8f98984d" + "uid": "57bae12d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.34.34", + "clusterIP": "10.104.178.1", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationhttppartialbuffertest-admin", - "nodePort": 31086, + "nodePort": 30213, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -138,19 +138,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttppartialbuffertest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttppartialbuffertest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8086},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8449}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttppartialbuffertest", "scope": "AmbassadorTest" }, "name": "authenticationhttppartialbuffertest-http", "namespace": "default", - "resourceVersion": "36203", + "resourceVersion": "55290", "selfLink": "/api/v1/namespaces/default/services/authenticationhttppartialbuffertest-http", - "uid": "0bb22b10-4794-11ea-829a-062d8f98984d" + "uid": "57d01d46-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.182.115", + "clusterIP": "10.99.110.62", "ports": [ { "name": "http", @@ -182,19 +182,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationhttppartialbuffertest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationhttppartialbuffertest-http-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8087},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8450}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:36Z", + "creationTimestamp": "2020-02-19T23:19:57Z", "labels": { "kat-ambassador-id": "authenticationhttppartialbuffertest", "scope": "AmbassadorTest" }, "name": "authenticationhttppartialbuffertest-http-auth", "namespace": "default", - "resourceVersion": "36206", + "resourceVersion": "55293", "selfLink": "/api/v1/namespaces/default/services/authenticationhttppartialbuffertest-http-auth", - "uid": "0bbb2886-4794-11ea-829a-062d8f98984d" + "uid": "57dabb38-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.24.73", + "clusterIP": "10.108.126.206", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationtest/bootstrap-ads.json b/python/tests/gold/authenticationtest/bootstrap-ads.json index 6c6b670b7a..44c7f1f340 100644 --- a/python/tests/gold/authenticationtest/bootstrap-ads.json +++ b/python/tests/gold/authenticationtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationtest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationtest/snapshots/econf.json b/python/tests/gold/authenticationtest/snapshots/econf.json index 6099419c6d..abacc0208a 100644 --- a/python/tests/gold/authenticationtest/snapshots/econf.json +++ b/python/tests/gold/authenticationtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -97,14 +110,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -484,15 +500,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationtest/snapshots/snapshot.yaml b/python/tests/gold/authenticationtest/snapshots/snapshot.yaml index fd1c2f8d18..fdb636e0df 100644 --- a/python/tests/gold/authenticationtest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationtest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: AuthService\nname: authenticationtest-ahttp-auth\nauth_service: \"authenticationtest-ahttp-auth\"\npath_prefix: \"/extauth\"\nallowed_headers:\n- X-Foo\n- X-Bar\n- Requested-Location\n- Requested-Status\n- Requested-Header\n- X-Foo\n- Extauth\nambassador_id: authenticationtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationtest-http\nprefix: /target/\nservice: authenticationtest-http\nambassador_id: authenticationtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: AuthService\\nname: authenticationtest-ahttp-auth\\nauth_service: \\\"authenticationtest-ahttp-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\nallowed_headers:\\n- X-Foo\\n- X-Bar\\n- Requested-Location\\n- Requested-Status\\n- Requested-Header\\n- X-Foo\\n- Extauth\\nambassador_id: authenticationtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationtest-http\\nprefix: /target/\\nservice: authenticationtest-http\\nambassador_id: authenticationtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationtest", @@ -31,24 +31,24 @@ }, "name": "authenticationtest", "namespace": "default", - "resourceVersion": "36316", + "resourceVersion": "55404", "selfLink": "/api/v1/namespaces/default/services/authenticationtest", - "uid": "0ce1d06b-4794-11ea-829a-062d8f98984d" + "uid": "5913d6aa-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.130.223", + "clusterIP": "10.103.212.225", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30394, + "nodePort": 31556, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32219, + "nodePort": 31027, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationtest-admin\"},\"name\":\"authenticationtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "authenticationtest-admin", "namespace": "default", - "resourceVersion": "36320", + "resourceVersion": "55409", "selfLink": "/api/v1/namespaces/default/services/authenticationtest-admin", - "uid": "0ceaf64b-4794-11ea-829a-062d8f98984d" + "uid": "591c8387-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.179.179", + "clusterIP": "10.98.235.227", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationtest-admin", - "nodePort": 31574, + "nodePort": 31232, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtest-ahttp-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"authenticationtest-ahttp-auth\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtest", "scope": "AmbassadorTest" }, "name": "authenticationtest-ahttp-auth", "namespace": "default", - "resourceVersion": "36331", + "resourceVersion": "55419", "selfLink": "/api/v1/namespaces/default/services/authenticationtest-ahttp-auth", - "uid": "0d09127e-4794-11ea-829a-062d8f98984d" + "uid": "593391e1-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.71.153", + "clusterIP": "10.101.118.95", "ports": [ { "name": "http", @@ -156,19 +156,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8093},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8456}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtest", "scope": "AmbassadorTest" }, "name": "authenticationtest-http", "namespace": "default", - "resourceVersion": "36328", + "resourceVersion": "55416", "selfLink": "/api/v1/namespaces/default/services/authenticationtest-http", - "uid": "0cfffbad-4794-11ea-829a-062d8f98984d" + "uid": "592b2fbb-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.107.65", + "clusterIP": "10.96.182.46", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationtestv1/bootstrap-ads.json b/python/tests/gold/authenticationtestv1/bootstrap-ads.json index f1a07e923c..94d5e82fd8 100644 --- a/python/tests/gold/authenticationtestv1/bootstrap-ads.json +++ b/python/tests/gold/authenticationtestv1/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationtestv1-default", "id": "test-id" diff --git a/python/tests/gold/authenticationtestv1/snapshots/econf.json b/python/tests/gold/authenticationtestv1/snapshots/econf.json index d9f7e89aae..a1d44a0d02 100644 --- a/python/tests/gold/authenticationtestv1/snapshots/econf.json +++ b/python/tests/gold/authenticationtestv1/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -108,14 +121,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -495,15 +511,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationtestv1/snapshots/snapshot.yaml b/python/tests/gold/authenticationtestv1/snapshots/snapshot.yaml index 9714d56934..592558502c 100644 --- a/python/tests/gold/authenticationtestv1/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationtestv1/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationtestv1-ahttp-auth1\nauth_service: \"authenticationtestv1-ahttp-auth1\"\nproto: http\npath_prefix: \"/extauth\"\ntimeout_ms: 5000\nallowed_request_headers:\n- X-Foo\n- X-Bar\n- Requested-Status\n- Requested-Header\n- Location\nallowed_authorization_headers:\n- X-Foo\n- Extauth\nstatus_on_error:\n code: 503\nambassador_id: authenticationtestv1\n---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationtestv1-ahttp-auth2\nauth_service: \"authenticationtestv1-ahttp-auth2\"\nproto: http\npath_prefix: \"/extauth\"\ntimeout_ms: 5000\nadd_linkerd_headers: true\nallowed_request_headers:\n- X-Foo\n- X-Bar\n- Requested-Status\n- Requested-Header\n- Location\nallowed_authorization_headers:\n- X-Foo\n- Extauth\nstatus_on_error:\n code: 503\nambassador_id: authenticationtestv1\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: authenticationtestv1-http\nprefix: /target/\nservice: authenticationtestv1-http\nambassador_id: authenticationtestv1\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: authenticationtestv1-http-unauthed\nprefix: /target/unauthed/\nservice: authenticationtestv1-http\nbypass_auth: true\nambassador_id: authenticationtestv1\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationtestv1-ahttp-auth1\\nauth_service: \\\"authenticationtestv1-ahttp-auth1\\\"\\nproto: http\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 5000\\nallowed_request_headers:\\n- X-Foo\\n- X-Bar\\n- Requested-Status\\n- Requested-Header\\n- Location\\nallowed_authorization_headers:\\n- X-Foo\\n- Extauth\\nstatus_on_error:\\n code: 503\\nambassador_id: authenticationtestv1\\n---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationtestv1-ahttp-auth2\\nauth_service: \\\"authenticationtestv1-ahttp-auth2\\\"\\nproto: http\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 5000\\nadd_linkerd_headers: true\\nallowed_request_headers:\\n- X-Foo\\n- X-Bar\\n- Requested-Status\\n- Requested-Header\\n- Location\\nallowed_authorization_headers:\\n- X-Foo\\n- Extauth\\nstatus_on_error:\\n code: 503\\nambassador_id: authenticationtestv1\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: authenticationtestv1-http\\nprefix: /target/\\nservice: authenticationtestv1-http\\nambassador_id: authenticationtestv1\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: authenticationtestv1-http-unauthed\\nprefix: /target/unauthed/\\nservice: authenticationtestv1-http\\nbypass_auth: true\\nambassador_id: authenticationtestv1\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationtestv1\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtestv1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationtestv1\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationtestv1", @@ -31,24 +31,24 @@ }, "name": "authenticationtestv1", "namespace": "default", - "resourceVersion": "36278", + "resourceVersion": "55367", "selfLink": "/api/v1/namespaces/default/services/authenticationtestv1", - "uid": "0c827daa-4794-11ea-829a-062d8f98984d" + "uid": "58bc740c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.193.195", + "clusterIP": "10.100.214.240", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30964, + "nodePort": 32215, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30492, + "nodePort": 31640, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtestv1\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationtestv1-admin\"},\"name\":\"authenticationtestv1-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationtestv1-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationtestv1\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:37Z", + "creationTimestamp": "2020-02-19T23:19:58Z", "labels": { "kat-ambassador-id": "authenticationtestv1", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "authenticationtestv1-admin", "namespace": "default", - "resourceVersion": "36282", + "resourceVersion": "55371", "selfLink": "/api/v1/namespaces/default/services/authenticationtestv1-admin", - "uid": "0c8e6340-4794-11ea-829a-062d8f98984d" + "uid": "58c903ba-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.242.149", + "clusterIP": "10.96.208.65", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationtestv1-admin", - "nodePort": 30130, + "nodePort": 30992, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtestv1\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtestv1-ahttp-auth1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"authenticationtestv1-ahttp-auth1\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtestv1", "scope": "AmbassadorTest" }, "name": "authenticationtestv1-ahttp-auth1", "namespace": "default", - "resourceVersion": "36292", + "resourceVersion": "55381", "selfLink": "/api/v1/namespaces/default/services/authenticationtestv1-ahttp-auth1", - "uid": "0caca662-4794-11ea-829a-062d8f98984d" + "uid": "58dff3af-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.131.142", + "clusterIP": "10.108.197.99", "ports": [ { "name": "http", @@ -156,19 +156,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtestv1\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtestv1-ahttp-auth2\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"authenticationtestv1-ahttp-auth2\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtestv1", "scope": "AmbassadorTest" }, "name": "authenticationtestv1-ahttp-auth2", "namespace": "default", - "resourceVersion": "36298", + "resourceVersion": "55389", "selfLink": "/api/v1/namespaces/default/services/authenticationtestv1-ahttp-auth2", - "uid": "0cbacfb2-4794-11ea-829a-062d8f98984d" + "uid": "58ef5eb3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.59.53", + "clusterIP": "10.106.144.47", "ports": [ { "name": "http", @@ -200,19 +200,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationtestv1\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationtestv1-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8092},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8455}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:38Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationtestv1", "scope": "AmbassadorTest" }, "name": "authenticationtestv1-http", "namespace": "default", - "resourceVersion": "36289", + "resourceVersion": "55377", "selfLink": "/api/v1/namespaces/default/services/authenticationtestv1-http", - "uid": "0ca4f31f-4794-11ea-829a-062d8f98984d" + "uid": "58d7cf48-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.119.19", + "clusterIP": "10.103.14.42", "ports": [ { "name": "http", diff --git a/python/tests/gold/authenticationwebsockettest/bootstrap-ads.json b/python/tests/gold/authenticationwebsockettest/bootstrap-ads.json index 3984afad3d..bb03fbb88f 100644 --- a/python/tests/gold/authenticationwebsockettest/bootstrap-ads.json +++ b/python/tests/gold/authenticationwebsockettest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "authenticationwebsockettest-default", "id": "test-id" diff --git a/python/tests/gold/authenticationwebsockettest/snapshots/econf.json b/python/tests/gold/authenticationwebsockettest/snapshots/econf.json index d01bfde881..75fe3ce893 100644 --- a/python/tests/gold/authenticationwebsockettest/snapshots/econf.json +++ b/python/tests/gold/authenticationwebsockettest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -97,14 +110,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -409,15 +425,15 @@ ], "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/authenticationwebsockettest/snapshots/snapshot.yaml b/python/tests/gold/authenticationwebsockettest/snapshots/snapshot.yaml index 47d8f3dd1c..37ae3ca53c 100644 --- a/python/tests/gold/authenticationwebsockettest/snapshots/snapshot.yaml +++ b/python/tests/gold/authenticationwebsockettest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: AuthService\nname: authenticationwebsockettest-http-auth\nauth_service: \"authenticationwebsockettest-http-auth\"\npath_prefix: \"/extauth\"\ntimeout_ms: 10000\nallowed_request_headers:\n- Requested-Status\nallow_request_body: true\nambassador_id: authenticationwebsockettest\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: AuthenticationWebsocketTest\nprefix: /AuthenticationWebsocketTest/\nservice: http://echo.websocket.org\nhost_rewrite: echo.websocket.org\nuse_websocket: true\nambassador_id: authenticationwebsockettest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: AuthService\\nname: authenticationwebsockettest-http-auth\\nauth_service: \\\"authenticationwebsockettest-http-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\ntimeout_ms: 10000\\nallowed_request_headers:\\n- Requested-Status\\nallow_request_body: true\\nambassador_id: authenticationwebsockettest\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: AuthenticationWebsocketTest\\nprefix: /AuthenticationWebsocketTest/\\nservice: http://echo.websocket.org\\nhost_rewrite: echo.websocket.org\\nuse_websocket: true\\nambassador_id: authenticationwebsockettest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"authenticationwebsockettest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationwebsockettest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"authenticationwebsockettest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "authenticationwebsockettest", @@ -31,24 +31,24 @@ }, "name": "authenticationwebsockettest", "namespace": "default", - "resourceVersion": "36346", + "resourceVersion": "55434", "selfLink": "/api/v1/namespaces/default/services/authenticationwebsockettest", - "uid": "0d3291c8-4794-11ea-829a-062d8f98984d" + "uid": "59595791-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.233.241", + "clusterIP": "10.105.246.154", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32493, + "nodePort": 31774, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30688, + "nodePort": 32480, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationwebsockettest\",\"scope\":\"AmbassadorTest\",\"service\":\"authenticationwebsockettest-admin\"},\"name\":\"authenticationwebsockettest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"authenticationwebsockettest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"authenticationwebsockettest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:19:59Z", "labels": { "kat-ambassador-id": "authenticationwebsockettest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "authenticationwebsockettest-admin", "namespace": "default", - "resourceVersion": "36351", + "resourceVersion": "55438", "selfLink": "/api/v1/namespaces/default/services/authenticationwebsockettest-admin", - "uid": "0d3c4a1b-4794-11ea-829a-062d8f98984d" + "uid": "5963b37c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.124.255", + "clusterIP": "10.108.245.79", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "authenticationwebsockettest-admin", - "nodePort": 31172, + "nodePort": 31865, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"authenticationwebsockettest\",\"scope\":\"AmbassadorTest\"},\"name\":\"authenticationwebsockettest-http-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8094},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8457}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:39Z", + "creationTimestamp": "2020-02-19T23:20:00Z", "labels": { "kat-ambassador-id": "authenticationwebsockettest", "scope": "AmbassadorTest" }, "name": "authenticationwebsockettest-http-auth", "namespace": "default", - "resourceVersion": "36357", + "resourceVersion": "55446", "selfLink": "/api/v1/namespaces/default/services/authenticationwebsockettest-http-auth", - "uid": "0d4de591-4794-11ea-829a-062d8f98984d" + "uid": "59765cdc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.68.128", + "clusterIP": "10.106.66.56", "ports": [ { "name": "http", diff --git a/python/tests/gold/clientcertificateauthentication/bootstrap-ads.json b/python/tests/gold/clientcertificateauthentication/bootstrap-ads.json index 34f4af3a32..2b966c3048 100644 --- a/python/tests/gold/clientcertificateauthentication/bootstrap-ads.json +++ b/python/tests/gold/clientcertificateauthentication/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "clientcertificateauthentication-default", "id": "test-id" diff --git a/python/tests/gold/clientcertificateauthentication/snapshots/econf.json b/python/tests/gold/clientcertificateauthentication/snapshots/econf.json index bc911398e8..334c524348 100644 --- a/python/tests/gold/clientcertificateauthentication/snapshots/econf.json +++ b/python/tests/gold/clientcertificateauthentication/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -210,8 +226,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -243,7 +258,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/clientcertificateauthentication/snapshots/snapshot.yaml b/python/tests/gold/clientcertificateauthentication/snapshots/snapshot.yaml index 7e3f22b744..e10d6dfd44 100644 --- a/python/tests/gold/clientcertificateauthentication/snapshots/snapshot.yaml +++ b/python/tests/gold/clientcertificateauthentication/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURaekNDQWs4Q0NRQ3JLNzRhM0dGaGlUQU5CZ2txaGtpRzl3MEJBUXNGQURCeE1Rc3dDUVlEVlFRR0V3SlYKVXpFTE1Ba0dBMVVFQ0F3Q1RVRXhEekFOQmdOVkJBY01Ca0p2YzNSdmJqRVJNQThHQTFVRUNnd0lSR0YwWVhkcApjbVV4RkRBU0JnTlZCQXNNQzBWdVoybHVaV1Z5YVc1bk1Sc3dHUVlEVlFRRERCSnRZWE4wWlhJdVpHRjBZWGRwCmNtVXVhVzh3SGhjTk1Ua3dNVEV3TVRrd056TTRXaGNOTWprd01UQTNNVGt3TnpNNFdqQjZNUXN3Q1FZRFZRUUcKRXdKSlRqRUxNQWtHQTFVRUNBd0NTMEV4RWpBUUJnTlZCQWNNQ1VKaGJtZGhiRzl5WlRFVE1CRUdBMVVFQ2d3SwpRVzFpWVhOellXUnZjakVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEh6QWRCZ05WQkFNTUZtRnRZbUZ6CmMyRmtiM0l1WlhoaGJYQnNaUzVqYjIwd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUIKQVFDN1liY3o5SkZOSHVYY3pvZERrTURvUXd0M1pmQnpjaElwTFlkeHNDZnB1UUYybGNmOGxXMEJKNnZlNU0xTAovMjNZalFYeEFsV25VZ3FZdFlEL1hiZGh3RCtyRWx3RXZWUzR1US9IT2EyUTUwVkF6SXNYa0lxWm00dVA1QzNECk8rQ0NncXJ3UUgzYS8vdlBERldYWkUyeTJvcUdZdE1Xd20zVXQrYnFWSFEzOThqcTNoaGt3MmNXL0pLTjJkR2UKRjk0OWxJWG15NHMrbGE3b21RWldWY0JFcWdQVzJDL1VrZktSbVdsVkRwK0duSk8vZHFobDlMN3d2a2hhc2JETAphbVkweXdiOG9LSjFRdmlvV1JxcjhZZnQ5NzVwaGgzazRlRVdMMUNFTmxFK09vUWNTNVRPUEdndko3WlMyaU43CllVTDRBK0gydCt1WWdUdnFSYVNqcTdnckFnTUJBQUV3RFFZSktvWklodmNOQVFFTEJRQURnZ0VCQUJURGJ4MzkKUGpoT2JpVW1Rdm9vbVhOVjJ1TG1FZkxJcGlKQUhWOTM0VTlmMnhVUS93eExkcElhVXM0WTlRSzhOR2h2U3dSSAp4Y2w4R2hGYzBXRDRoNEJTdmNhdUdVS21LRzh5ZVFhdGhGVjBzcGFHYjUvaFBqUVdDWnNYK3crbjU4WDROOHBrCmx5YkE4akZGdUZlb3R3Z1l6UUhzQUppU29DbW9OQ0ZkaE4xT05FS1FMY1gxT2NRSUFUd3JVYzRBRkw2Y0hXZ1MKb1FOc3BTMlZIbENsVkpVN0E3Mkh4R3E5RFVJOWlaMmYxVnc1Rmpod0dxalBQMDJVZms1Tk9RNFgzNWlrcjlDcApyQWtJSnh1NkZPUUgwbDBmZ3VNUDlsUFhJZndlMUowQnNLZHRtd2wvcHp0TVV5dW5TbURVWEgyR1l5YmdQTlQyCnNMVFF1RFZaR0xmbFJUdz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=\",\"tls.key\":\"LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBdTJHM00vU1JUUjdsM002SFE1REE2RU1MZDJYd2MzSVNLUzJIY2JBbjZia0JkcFhICi9KVnRBU2VyM3VUTlMvOXQySTBGOFFKVnAxSUttTFdBLzEyM1ljQS9xeEpjQkwxVXVMa1B4em10a09kRlFNeUwKRjVDS21adUxqK1F0d3p2Z2dvS3E4RUI5MnYvN3p3eFZsMlJOc3RxS2htTFRGc0p0MUxmbTZsUjBOL2ZJNnQ0WQpaTU5uRnZ5U2pkblJuaGZlUFpTRjVzdUxQcFd1NkprR1ZsWEFSS29EMXRndjFKSHlrWmxwVlE2ZmhweVR2M2FvClpmUys4TDVJV3JHd3kycG1OTXNHL0tDaWRVTDRxRmthcS9HSDdmZSthWVlkNU9IaEZpOVFoRFpSUGpxRUhFdVUKemp4b0x5ZTJVdG9qZTJGQytBUGg5cmZybUlFNzZrV2tvNnU0S3dJREFRQUJBb0lCQVFDbmZrZjViQko1Z2pYcgpzcnliKzRkRDFiSXBMdmpJNk4wczY2S1hUK1BOZW03QlprOVdDdWRkMGUxQ2x2aWZoeG5VS1BKM3BTT1ZKYk9OCkh5aklteWV4ZTl3dGVZTEJSYysyTXMzVXdrelFLcm52bXlaMWtPRWpQek40RW5tSmV6dEt6YXdvaHkwNGxmcXEKNzVhT2RiMHlNMEVCc05LSkZKQ0NSVVJtajhrMndJQXIwbHFhV0ZNcGlYT3FzTXBvWTZMY3plaGlMZHU0bUFaSQpRRHhCM3dLVGpmdGNIdzcxTmFKZlg5V2t2OFI4ZWlqeWpNOUl2Y1cwZmRQem9YVTBPZEFTa09ZRlFIZHlCUFNiCjllNWhDSGFJczZia1hBOEs4YmZRazBSL0d6STcyVXArd0JrbnJnTlhZTXFudHJSa0ljNURER1g0b3VOc2lqUkoKSWtrWER2TjVBb0dCQU8veFQrNTYyQ2hwc3R2NUpvMi9ycFdGb05tZ3ZJT0RMRGxiamhHZEpqKytwNk1BdjFQWgo2d042WnozMmppUG1OYzdCK2hrQm40RFQvVkFpU3NLRG1SK09tUkg1TVNzQXh6aWRxU3lNcldxdG1lMDNBVzd6Cklja0FNTGdwWHhDdW1HMzRCM2Jxb3VUdGVRdm5WcmRlR2hvdUJ5OUJSMVpXbnRtWHVscVhyNUFmQW9HQkFNZnIKN29NVGwzdUVVeml5a0IzYmkxb0RYdUNjN01Qc3h0c1IwdElqZXc3RStwTGoyaUxXZUZuMGVhdnJYaHQ1ODRJbwpDZG90a1ZMMHhrZ1g3M2ZremxEd1hobTJVTXBaQmxzSzBnR09SaUYzd0ZMU0hJNmxRUmJkaXRIb0JqcDRGTEZzCitlanZKUDZ1ZitBekZ5cjBLTnc3TnpyaCthbFhFQ09RS2NqUXJlWjFBb0dBQXRLZzhScEszcmJYbnRUZ2lqeGUKRG01REJTeHA2MVlvdUFnR3ROaFhjZHFKV0ZhUzZhYWZxQ3ZSZVI0a2IvR3VZbDlQMU9sNitlWUVqZVBKWTE1dQo5N3NTdSs1bGtLN3lxUXpaeDZka0J1UkI4bE42VmRiUVorL3pvc2NCMGsxcmg2ZXFWdEROMThtZmFlOXZ5cnAxCnJpY3FlSGpaSVAvbDRJTnpjc3RrQ2xzQ2dZQmh5TVZkZVZ5emZuS1NIY3lkdmY5MzVJUW9pcmpIeiswbnc1MEIKU1hkc0x1NThvRlBXakY1TGFXZUZybGJXUzV6T1FiVW44UGZPd29pbFJJZk5kYTF3SzFGcmRDQXFDTWN5Q3FYVApPdnFVYmhVMHJTNW9tdTJ1T0dnbzZUcjZxRGMrM1JXVFdEMFpFTkxkSDBBcXMwZTFDSVdvR0ZWYi9ZaVlUSEFUCmwvWW03UUtCZ1FEcFYvSjRMakY5VzBlUlNXenFBaDN1TStCdzNNN2NEMUxnUlZ6ZWxGS2w2ZzRBMWNvdU8wbHAKalpkMkVMZDlzTHhBVENVeFhQZ0dDTjY0RVNZSi92ZUozUmJzMTMrU2xqdjRleTVKck1ieEhNRC9CU1ovY2VjaAp4aFNWNkJsMHVKb2tlMTRPMEJ3OHJzSUlxZTVZSUxqSlMwL2E2eTllSlJtaGZJVG9PZU5PTUE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-clientcert-server-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:18Z", + "creationTimestamp": "2020-02-19T23:20:45Z", "labels": { "kat-ambassador-id": "clientcertificateauthentication", "scope": "AmbassadorTest" }, "name": "test-clientcert-server-secret", "namespace": "default", - "resourceVersion": "37764", + "resourceVersion": "56947", "selfLink": "/api/v1/namespaces/default/secrets/test-clientcert-server-secret", - "uid": "24a0d603-4794-11ea-829a-062d8f98984d" + "uid": "749eac0c-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" }, @@ -49,16 +49,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR1RENDQXFDZ0F3SUJBZ0lKQUowWDU3ZXlwQk5UTUEwR0NTcUdTSWIzRFFFQkN3VUFNSEV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4R3pBWkJnTlZCQU1NRW0xaGMzUmxjaTVrCllYUmhkMmx5WlM1cGJ6QWVGdzB4T1RBeE1UQXhPVEF6TXpCYUZ3MHlOREF4TURreE9UQXpNekJhTUhFeEN6QUoKQmdOVkJBWVRBbFZUTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRSwpEQWhFWVhSaGQybHlaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEd6QVpCZ05WQkFNTUVtMWhjM1JsCmNpNWtZWFJoZDJseVpTNXBiekNDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFPdlEKVjVad1NmcmQ1Vndtelo5SmNoOTdyUW40OXA2b1FiNkVIWjF5T2EyZXZBNzE2NWpkMHFqS1BPMlgyRk80MVg4QgpwQWFLZExnMmltaC9wL2NXN2JncjNHNnRHVEZVMVZHanllTE1EV0Q1MGV2TTYydnpYOFRuYVV6ZFRHTjFOdTM2CnJaM2JnK0VLcjhFYjI1b2RabEpyMm1mNktSeDdTcjZzT1N4NlE1VHhSb3NycmZ0d0tjejI5cHZlMGQ4b0NiZGkKRFJPVlZjNXpBaW0zc2Nmd3VwRUJrQzYxdlpKMzhmaXYwRENYOVpna3BMdEZKUTllTEVQSEdKUGp5ZmV3alNTeQovbk52L21Sc2J6aUNtQ3R3Z3BmbFRtODljK3EzSWhvbUE1YXhZQVFjQ0NqOXBvNUhVZHJtSUJKR0xBTVZ5OWJ5CkZnZE50aFdBeHZCNHZmQXl4OXNDQXdFQUFhTlRNRkV3SFFZRFZSME9CQllFRkdUOVAvOHBQeGI3UVJVeFcvV2gKaXpkMnNnbEtNQjhHQTFVZEl3UVlNQmFBRkdUOVAvOHBQeGI3UVJVeFcvV2hpemQyc2dsS01BOEdBMVVkRXdFQgovd1FGTUFNQkFmOHdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBS3NWT2Fyc01aSXhLOUpLUzBHVHNnRXNjYThqCllhTDg1YmFsbndBbnBxMllSMGNIMlhvd2dLYjNyM3VmbVRCNERzWS9RMGllaENKeTMzOUJyNjVQMVBKMGgvemYKZEZOcnZKNGlvWDVMWnc5YkowQVFORCtZUTBFK010dFppbE9DbHNPOVBCdm1tUEp1dWFlYVdvS2pWZnNOL1RjMAoycUxVM1pVMHo5bmhYeDZlOWJxYUZLSU1jYnFiVk9nS2p3V0ZpbDlkRG4vQ29KbGFUUzRJWjlOaHFjUzhYMXd0ClQybWQvSUtaaEtKc3A3VlBGeDU5ZWhuZ0VPakZocGhzd20xdDhnQWVxL1A3SkhaUXlBUGZYbDNyZDFSQVJuRVIKQUpmVUxET2tzWFNFb2RTZittR0NrVWh1b2QvaDhMTUdXTFh6Q2d0SHBKMndaVHA5a1ZWVWtKdkpqSVU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-clientcert-client-secret\",\"namespace\":\"default\"},\"type\":\"Opaque\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:18Z", + "creationTimestamp": "2020-02-19T23:20:45Z", "labels": { "kat-ambassador-id": "clientcertificateauthentication", "scope": "AmbassadorTest" }, "name": "test-clientcert-client-secret", "namespace": "default", - "resourceVersion": "37763", + "resourceVersion": "56942", "selfLink": "/api/v1/namespaces/default/secrets/test-clientcert-client-secret", - "uid": "249711c6-4794-11ea-829a-062d8f98984d" + "uid": "748522e2-536e-11ea-85dd-167682b5c255" }, "type": "Opaque" } @@ -72,7 +72,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nambassador_id: clientcertificateauthentication\nname: tls\nconfig:\n server:\n enabled: True\n secret: test-clientcert-server-secret\n client:\n enabled: True\n secret: test-clientcert-client-secret\n cert_required: True\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: clientcertificateauthentication-http\nprefix: /ClientCertificateAuthentication/\nservice: clientcertificateauthentication-http\nambassador_id: clientcertificateauthentication\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nambassador_id: clientcertificateauthentication\\nname: tls\\nconfig:\\n server:\\n enabled: True\\n secret: test-clientcert-server-secret\\n client:\\n enabled: True\\n secret: test-clientcert-client-secret\\n cert_required: True\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: clientcertificateauthentication-http\\nprefix: /ClientCertificateAuthentication/\\nservice: clientcertificateauthentication-http\\nambassador_id: clientcertificateauthentication\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\"},\"name\":\"clientcertificateauthentication\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"clientcertificateauthentication\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:17Z", + "creationTimestamp": "2020-02-19T23:20:44Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "clientcertificateauthentication", @@ -80,24 +80,24 @@ }, "name": "clientcertificateauthentication", "namespace": "default", - "resourceVersion": "37745", + "resourceVersion": "56926", "selfLink": "/api/v1/namespaces/default/services/clientcertificateauthentication", - "uid": "2428a846-4794-11ea-829a-062d8f98984d" + "uid": "743dfbb3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.89.101", + "clusterIP": "10.97.117.114", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32247, + "nodePort": 32482, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31545, + "nodePort": 32396, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -120,7 +120,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\",\"service\":\"clientcertificateauthentication-admin\"},\"name\":\"clientcertificateauthentication-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"clientcertificateauthentication-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"clientcertificateauthentication\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:18Z", + "creationTimestamp": "2020-02-19T23:20:45Z", "labels": { "kat-ambassador-id": "clientcertificateauthentication", "scope": "AmbassadorTest", @@ -128,17 +128,17 @@ }, "name": "clientcertificateauthentication-admin", "namespace": "default", - "resourceVersion": "37756", + "resourceVersion": "56935", "selfLink": "/api/v1/namespaces/default/services/clientcertificateauthentication-admin", - "uid": "247f959d-4794-11ea-829a-062d8f98984d" + "uid": "746ffc1c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.7.66", + "clusterIP": "10.105.62.26", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "clientcertificateauthentication-admin", - "nodePort": 30867, + "nodePort": 30921, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -159,33 +159,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\"},\"name\":\"clientcertificateauthentication-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8122},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8485}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"clientcertificateauthentication\",\"scope\":\"AmbassadorTest\"},\"name\":\"clientcertificateauthentication-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8123},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8486}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:18Z", + "creationTimestamp": "2020-02-19T23:20:45Z", "labels": { "kat-ambassador-id": "clientcertificateauthentication", "scope": "AmbassadorTest" }, "name": "clientcertificateauthentication-http", "namespace": "default", - "resourceVersion": "37766", + "resourceVersion": "56950", "selfLink": "/api/v1/namespaces/default/services/clientcertificateauthentication-http", - "uid": "24b1913d-4794-11ea-829a-062d8f98984d" + "uid": "74b12ad7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.43.90", + "clusterIP": "10.101.110.29", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8122 + "targetPort": 8123 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8485 + "targetPort": 8486 } ], "selector": { diff --git a/python/tests/gold/empty/bootstrap-ads.json b/python/tests/gold/empty/bootstrap-ads.json index f2955ffc0d..a1a2197aa9 100644 --- a/python/tests/gold/empty/bootstrap-ads.json +++ b/python/tests/gold/empty/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "empty-empty-namespace", "id": "test-id" diff --git a/python/tests/gold/empty/snapshots/aconf.json b/python/tests/gold/empty/snapshots/aconf.json index d9b94b2a1e..f7b6633997 100644 --- a/python/tests/gold/empty/snapshots/aconf.json +++ b/python/tests/gold/empty/snapshots/aconf.json @@ -5,25 +5,25 @@ "error": "Ambassador could not find core CRD definitions. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "empty", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find Resolver type CRD definitions. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "empty", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find the Host CRD definition. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "empty", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find the LogService CRD definition. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "empty", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" } ] }, diff --git a/python/tests/gold/empty/snapshots/econf.json b/python/tests/gold/empty/snapshots/econf.json index e46d2fe255..c06b9dcb22 100644 --- a/python/tests/gold/empty/snapshots/econf.json +++ b/python/tests/gold/empty/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -43,14 +56,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -213,15 +229,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/empty/snapshots/snapshot.yaml b/python/tests/gold/empty/snapshots/snapshot.yaml index 68661b4fca..985491f15f 100644 --- a/python/tests/gold/empty/snapshots/snapshot.yaml +++ b/python/tests/gold/empty/snapshots/snapshot.yaml @@ -10,7 +10,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"empty\",\"scope\":\"AmbassadorTest\"},\"name\":\"empty\",\"namespace\":\"empty-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"empty\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:33Z", + "creationTimestamp": "2020-02-19T23:19:54Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "empty", @@ -18,24 +18,24 @@ }, "name": "empty", "namespace": "empty-namespace", - "resourceVersion": "36011", + "resourceVersion": "55101", "selfLink": "/api/v1/namespaces/empty-namespace/services/empty", - "uid": "09f3c75a-4794-11ea-829a-062d8f98984d" + "uid": "56320af5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.133.149", + "clusterIP": "10.103.229.209", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31085, + "nodePort": 31945, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30375, + "nodePort": 30329, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -58,7 +58,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"empty\",\"scope\":\"AmbassadorTest\",\"service\":\"empty-admin\"},\"name\":\"empty-admin\",\"namespace\":\"empty-namespace\"},\"spec\":{\"ports\":[{\"name\":\"empty-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"empty\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:33Z", + "creationTimestamp": "2020-02-19T23:19:54Z", "labels": { "kat-ambassador-id": "empty", "scope": "AmbassadorTest", @@ -66,17 +66,17 @@ }, "name": "empty-admin", "namespace": "empty-namespace", - "resourceVersion": "36015", + "resourceVersion": "55105", "selfLink": "/api/v1/namespaces/empty-namespace/services/empty-admin", - "uid": "09fea25e-4794-11ea-829a-062d8f98984d" + "uid": "563a5ab4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.116.190", + "clusterIP": "10.105.120.111", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "empty-admin", - "nodePort": 31549, + "nodePort": 31999, "port": 8877, "protocol": "TCP", "targetPort": 8877 diff --git a/python/tests/gold/envoylogtest/bootstrap-ads.json b/python/tests/gold/envoylogtest/bootstrap-ads.json index df2eb2be1d..59fe6a4947 100644 --- a/python/tests/gold/envoylogtest/bootstrap-ads.json +++ b/python/tests/gold/envoylogtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "envoylogtest-default", "id": "test-id" diff --git a/python/tests/gold/envoylogtest/snapshots/econf.json b/python/tests/gold/envoylogtest/snapshots/econf.json index fafaa2b6ed..342be1a2e9 100644 --- a/python/tests/gold/envoylogtest/snapshots/econf.json +++ b/python/tests/gold/envoylogtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -43,14 +56,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "MY_REQUEST %RESPONSE_CODE% \"%REQ(:AUTHORITY)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%UPSTREAM_HOST%\"\n", "path": "/tmp/ambassador/ambassador.log" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -213,15 +229,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/envoylogtest/snapshots/snapshot.yaml b/python/tests/gold/envoylogtest/snapshots/snapshot.yaml index 15c8e499f0..e6e6f9f636 100644 --- a/python/tests/gold/envoylogtest/snapshots/snapshot.yaml +++ b/python/tests/gold/envoylogtest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nambassador_id: envoylogtest\nconfig:\n envoy_log_path: /tmp/ambassador/ambassador.log\n envoy_log_format: MY_REQUEST %RESPONSE_CODE% \"%REQ(:AUTHORITY)%\" \"%REQ(USER-AGENT)%\"\n \"%REQ(X-REQUEST-ID)%\" \"%UPSTREAM_HOST%\"\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nambassador_id: envoylogtest\\nconfig:\\n envoy_log_path: /tmp/ambassador/ambassador.log\\n envoy_log_format: MY_REQUEST %RESPONSE_CODE% \\\"%REQ(:AUTHORITY)%\\\" \\\"%REQ(USER-AGENT)%\\\"\\n \\\"%REQ(X-REQUEST-ID)%\\\" \\\"%UPSTREAM_HOST%\\\"\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"envoylogtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"envoylogtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"envoylogtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:21:13Z", + "creationTimestamp": "2020-02-19T23:22:01Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "envoylogtest", @@ -31,24 +31,24 @@ }, "name": "envoylogtest", "namespace": "default", - "resourceVersion": "38600", + "resourceVersion": "57900", "selfLink": "/api/v1/namespaces/default/services/envoylogtest", - "uid": "45b47442-4794-11ea-829a-062d8f98984d" + "uid": "a1c94f04-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.189.34", + "clusterIP": "10.100.18.157", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32178, + "nodePort": 31178, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31843, + "nodePort": 32456, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"envoylogtest\",\"scope\":\"AmbassadorTest\",\"service\":\"envoylogtest-admin\"},\"name\":\"envoylogtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"envoylogtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"envoylogtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:21:14Z", + "creationTimestamp": "2020-02-19T23:22:03Z", "labels": { "kat-ambassador-id": "envoylogtest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "envoylogtest-admin", "namespace": "default", - "resourceVersion": "38608", + "resourceVersion": "57911", "selfLink": "/api/v1/namespaces/default/services/envoylogtest-admin", - "uid": "45d6fbb1-4794-11ea-829a-062d8f98984d" + "uid": "a2e3b310-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.70.106", + "clusterIP": "10.110.160.237", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "envoylogtest-admin", - "nodePort": 31197, + "nodePort": 32360, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -110,33 +110,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"envoylogtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"envoylogtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8136},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8499}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"envoylogtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"envoylogtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8138},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8501}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:21:14Z", + "creationTimestamp": "2020-02-19T23:22:05Z", "labels": { "kat-ambassador-id": "envoylogtest", "scope": "AmbassadorTest" }, "name": "envoylogtest-http", "namespace": "default", - "resourceVersion": "38614", + "resourceVersion": "57931", "selfLink": "/api/v1/namespaces/default/services/envoylogtest-http", - "uid": "45efd778-4794-11ea-829a-062d8f98984d" + "uid": "a401a100-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.77.112", + "clusterIP": "10.108.153.45", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8136 + "targetPort": 8138 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8499 + "targetPort": 8501 } ], "selector": { diff --git a/python/tests/gold/globalcorstest/bootstrap-ads.json b/python/tests/gold/globalcorstest/bootstrap-ads.json index dc37564e51..e0d727cda2 100644 --- a/python/tests/gold/globalcorstest/bootstrap-ads.json +++ b/python/tests/gold/globalcorstest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "globalcorstest-default", "id": "test-id" diff --git a/python/tests/gold/globalcorstest/snapshots/econf.json b/python/tests/gold/globalcorstest/snapshots/econf.json index 4b22bd8b95..a20522fa03 100644 --- a/python/tests/gold/globalcorstest/snapshots/econf.json +++ b/python/tests/gold/globalcorstest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -122,8 +138,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -154,8 +172,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -192,8 +212,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -224,8 +246,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -262,8 +286,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -294,8 +320,10 @@ "cluster": "cluster_127_0_0_1_8877_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -332,8 +360,10 @@ "cluster": "cluster_globalcorstest_http_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -364,8 +394,10 @@ "cluster": "cluster_globalcorstest_http_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -402,8 +434,10 @@ "cluster": "cluster_globalcorstest_http_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://bar.example.com" + "allow_origin_string_match": [ + { + "exact": "http://bar.example.com" + } ], "filter_enabled": { "default_value": { @@ -434,8 +468,10 @@ "cluster": "cluster_globalcorstest_http_default", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://bar.example.com" + "allow_origin_string_match": [ + { + "exact": "http://bar.example.com" + } ], "filter_enabled": { "default_value": { @@ -458,15 +494,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/globalcorstest/snapshots/ir.json b/python/tests/gold/globalcorstest/snapshots/ir.json index 754a687d7a..69eb81cf5b 100644 --- a/python/tests/gold/globalcorstest/snapshots/ir.json +++ b/python/tests/gold/globalcorstest/snapshots/ir.json @@ -10,8 +10,10 @@ "admin_port": 8001, "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://foo.example.com" + "allow_origin_string_match": [ + { + "exact": "http://foo.example.com" + } ], "filter_enabled": { "default_value": { @@ -538,8 +540,10 @@ "_rkey": "globalcorstest.default.3", "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://bar.example.com" + "allow_origin_string_match": [ + { + "exact": "http://bar.example.com" + } ], "filter_enabled": { "default_value": { @@ -604,8 +608,10 @@ }, "cors": { "allow_methods": "POST, GET, OPTIONS", - "allow_origin": [ - "http://bar.example.com" + "allow_origin_string_match": [ + { + "exact": "http://bar.example.com" + } ], "filter_enabled": { "default_value": { diff --git a/python/tests/gold/globalcorstest/snapshots/snapshot.yaml b/python/tests/gold/globalcorstest/snapshots/snapshot.yaml index 2e947e1f28..9c3e0ab742 100644 --- a/python/tests/gold/globalcorstest/snapshots/snapshot.yaml +++ b/python/tests/gold/globalcorstest/snapshots/snapshot.yaml @@ -20,38 +20,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nconfig:\n cors:\n origins: http://foo.example.com\n methods: POST, GET, OPTIONS\nambassador_id: globalcorstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: globalcorstest-http-foo\nprefix: /foo/\nservice: globalcorstest-http\nambassador_id: globalcorstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: globalcorstest-http-bar\nprefix: /bar/\nservice: globalcorstest-http\ncors:\n origins: http://bar.example.com\n methods: POST, GET, OPTIONS\nambassador_id: globalcorstest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nconfig:\\n cors:\\n origins: http://foo.example.com\\n methods: POST, GET, OPTIONS\\nambassador_id: globalcorstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: globalcorstest-http-foo\\nprefix: /foo/\\nservice: globalcorstest-http\\nambassador_id: globalcorstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: globalcorstest-http-bar\\nprefix: /bar/\\nservice: globalcorstest-http\\ncors:\\n origins: http://bar.example.com\\n methods: POST, GET, OPTIONS\\nambassador_id: globalcorstest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"globalcorstest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"globalcorstest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\",\"service\":\"globalcorstest-admin\"},\"name\":\"globalcorstest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"globalcorstest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"globalcorstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "globalcorstest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "globalcorstest-admin" }, - "name": "globalcorstest", + "name": "globalcorstest-admin", "namespace": "default", - "resourceVersion": "36131", - "selfLink": "/api/v1/namespaces/default/services/globalcorstest", - "uid": "0afae836-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55223", + "selfLink": "/api/v1/namespaces/default/services/globalcorstest-admin", + "uid": "57301d71-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.18.148", + "clusterIP": "10.105.131.166", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 30578, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 32608, - "port": 443, + "name": "globalcorstest-admin", + "nodePort": 32252, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -69,37 +61,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\",\"service\":\"globalcorstest-admin\"},\"name\":\"globalcorstest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"globalcorstest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"globalcorstest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"globalcorstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8084},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8447}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { "kat-ambassador-id": "globalcorstest", - "scope": "AmbassadorTest", - "service": "globalcorstest-admin" + "scope": "AmbassadorTest" }, - "name": "globalcorstest-admin", + "name": "globalcorstest-http", "namespace": "default", - "resourceVersion": "36138", - "selfLink": "/api/v1/namespaces/default/services/globalcorstest-admin", - "uid": "0b040fe0-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55232", + "selfLink": "/api/v1/namespaces/default/services/globalcorstest-http", + "uid": "573e6fdd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.103.108", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.99.173.184", "ports": [ { - "name": "globalcorstest-admin", - "nodePort": 30069, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8084 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8447 } ], "selector": { - "service": "globalcorstest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -110,40 +105,45 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"globalcorstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8084},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8447}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nconfig:\n cors:\n origins: http://foo.example.com\n methods: POST, GET, OPTIONS\nambassador_id: globalcorstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: globalcorstest-http-foo\nprefix: /foo/\nservice: globalcorstest-http\nambassador_id: globalcorstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: globalcorstest-http-bar\nprefix: /bar/\nservice: globalcorstest-http\ncors:\n origins: http://bar.example.com\n methods: POST, GET, OPTIONS\nambassador_id: globalcorstest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nconfig:\\n cors:\\n origins: http://foo.example.com\\n methods: POST, GET, OPTIONS\\nambassador_id: globalcorstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: globalcorstest-http-foo\\nprefix: /foo/\\nservice: globalcorstest-http\\nambassador_id: globalcorstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: globalcorstest-http-bar\\nprefix: /bar/\\nservice: globalcorstest-http\\ncors:\\n origins: http://bar.example.com\\n methods: POST, GET, OPTIONS\\nambassador_id: globalcorstest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"globalcorstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"globalcorstest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"globalcorstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "globalcorstest", "scope": "AmbassadorTest" }, - "name": "globalcorstest-http", + "name": "globalcorstest", "namespace": "default", - "resourceVersion": "36145", - "selfLink": "/api/v1/namespaces/default/services/globalcorstest-http", - "uid": "0b14800a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55219", + "selfLink": "/api/v1/namespaces/default/services/globalcorstest", + "uid": "57277b49-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.77.208", + "clusterIP": "10.105.86.54", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 30615, "port": 80, "protocol": "TCP", - "targetPort": 8084 + "targetPort": 8080 }, { "name": "https", + "nodePort": 31797, "port": 443, "protocol": "TCP", - "targetPort": 8447 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "globalcorstest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/gzipminimumconfigtest/bootstrap-ads.json b/python/tests/gold/gzipminimumconfigtest/bootstrap-ads.json index b64841eef2..7faf939cd8 100644 --- a/python/tests/gold/gzipminimumconfigtest/bootstrap-ads.json +++ b/python/tests/gold/gzipminimumconfigtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "gzipminimumconfigtest-default", "id": "test-id" diff --git a/python/tests/gold/gzipminimumconfigtest/snapshots/econf.json b/python/tests/gold/gzipminimumconfigtest/snapshots/econf.json index db9c78fe95..5a618c6d61 100644 --- a/python/tests/gold/gzipminimumconfigtest/snapshots/econf.json +++ b/python/tests/gold/gzipminimumconfigtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -297,15 +313,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/gzipminimumconfigtest/snapshots/snapshot.yaml b/python/tests/gold/gzipminimumconfigtest/snapshots/snapshot.yaml index ab836ddc82..338a00f1d9 100644 --- a/python/tests/gold/gzipminimumconfigtest/snapshots/snapshot.yaml +++ b/python/tests/gold/gzipminimumconfigtest/snapshots/snapshot.yaml @@ -20,38 +20,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n gzip:\n enabled: true\nambassador_id: gzipminimumconfigtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: gzipminimumconfigtest-http\nprefix: /target/\nservice: gzipminimumconfigtest-http\nambassador_id: gzipminimumconfigtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n gzip:\\n enabled: true\\nambassador_id: gzipminimumconfigtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: gzipminimumconfigtest-http\\nprefix: /target/\\nservice: gzipminimumconfigtest-http\\nambassador_id: gzipminimumconfigtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipminimumconfigtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"gzipminimumconfigtest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\",\"service\":\"gzipminimumconfigtest-admin\"},\"name\":\"gzipminimumconfigtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"gzipminimumconfigtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"gzipminimumconfigtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "gzipminimumconfigtest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "gzipminimumconfigtest-admin" }, - "name": "gzipminimumconfigtest", + "name": "gzipminimumconfigtest-admin", "namespace": "default", - "resourceVersion": "36481", - "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest", - "uid": "0eb63f9a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55595", + "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest-admin", + "uid": "5c24b7bc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.119.235", + "clusterIP": "10.98.52.125", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 30560, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 32701, - "port": 443, + "name": "gzipminimumconfigtest-admin", + "nodePort": 30425, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -69,37 +61,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\",\"service\":\"gzipminimumconfigtest-admin\"},\"name\":\"gzipminimumconfigtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"gzipminimumconfigtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"gzipminimumconfigtest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipminimumconfigtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8095},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8458}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { "kat-ambassador-id": "gzipminimumconfigtest", - "scope": "AmbassadorTest", - "service": "gzipminimumconfigtest-admin" + "scope": "AmbassadorTest" }, - "name": "gzipminimumconfigtest-admin", + "name": "gzipminimumconfigtest-http", "namespace": "default", - "resourceVersion": "36486", - "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest-admin", - "uid": "0ec1c579-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55602", + "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest-http", + "uid": "5c31f048-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.143.101", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.99.50.253", "ports": [ { - "name": "gzipminimumconfigtest-admin", - "nodePort": 32521, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8095 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8458 } ], "selector": { - "service": "gzipminimumconfigtest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -110,40 +105,45 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipminimumconfigtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8095},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8458}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n gzip:\n enabled: true\nambassador_id: gzipminimumconfigtest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: gzipminimumconfigtest-http\nprefix: /target/\nservice: gzipminimumconfigtest-http\nambassador_id: gzipminimumconfigtest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n gzip:\\n enabled: true\\nambassador_id: gzipminimumconfigtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: gzipminimumconfigtest-http\\nprefix: /target/\\nservice: gzipminimumconfigtest-http\\nambassador_id: gzipminimumconfigtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"gzipminimumconfigtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipminimumconfigtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"gzipminimumconfigtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:41Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "gzipminimumconfigtest", "scope": "AmbassadorTest" }, - "name": "gzipminimumconfigtest-http", + "name": "gzipminimumconfigtest", "namespace": "default", - "resourceVersion": "36493", - "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest-http", - "uid": "0ed336e5-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55591", + "selfLink": "/api/v1/namespaces/default/services/gzipminimumconfigtest", + "uid": "5c1bbba3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.77.126", + "clusterIP": "10.104.158.21", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 32412, "port": 80, "protocol": "TCP", - "targetPort": 8095 + "targetPort": 8080 }, { "name": "https", + "nodePort": 31429, "port": 443, "protocol": "TCP", - "targetPort": 8458 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "gzipminimumconfigtest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/gzipnotsupportedcontenttypetest/bootstrap-ads.json b/python/tests/gold/gzipnotsupportedcontenttypetest/bootstrap-ads.json index c6af464269..faa7321f6d 100644 --- a/python/tests/gold/gzipnotsupportedcontenttypetest/bootstrap-ads.json +++ b/python/tests/gold/gzipnotsupportedcontenttypetest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "gzipnotsupportedcontenttypetest-default", "id": "test-id" diff --git a/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/econf.json b/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/econf.json index b1ff087d58..3d08b31c33 100644 --- a/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/econf.json +++ b/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -299,15 +315,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/snapshot.yaml b/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/snapshot.yaml index 1dfbfddeb9..fd4c1448a3 100644 --- a/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/snapshot.yaml +++ b/python/tests/gold/gzipnotsupportedcontenttypetest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n gzip:\n min_content_length: 32\n content_type:\n - application/json\nambassador_id: gzipnotsupportedcontenttypetest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: gzipnotsupportedcontenttypetest-http\nprefix: /target/\nservice: gzipnotsupportedcontenttypetest-http\nambassador_id: gzipnotsupportedcontenttypetest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n gzip:\\n min_content_length: 32\\n content_type:\\n - application/json\\nambassador_id: gzipnotsupportedcontenttypetest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: gzipnotsupportedcontenttypetest-http\\nprefix: /target/\\nservice: gzipnotsupportedcontenttypetest-http\\nambassador_id: gzipnotsupportedcontenttypetest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"gzipnotsupportedcontenttypetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipnotsupportedcontenttypetest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"gzipnotsupportedcontenttypetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "gzipnotsupportedcontenttypetest", @@ -31,24 +31,24 @@ }, "name": "gzipnotsupportedcontenttypetest", "namespace": "default", - "resourceVersion": "36531", + "resourceVersion": "55635", "selfLink": "/api/v1/namespaces/default/services/gzipnotsupportedcontenttypetest", - "uid": "0f34bd2d-4794-11ea-829a-062d8f98984d" + "uid": "5c8531c9-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.88.199", + "clusterIP": "10.107.143.148", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30917, + "nodePort": 30096, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30305, + "nodePort": 30035, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipnotsupportedcontenttypetest\",\"scope\":\"AmbassadorTest\",\"service\":\"gzipnotsupportedcontenttypetest-admin\"},\"name\":\"gzipnotsupportedcontenttypetest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"gzipnotsupportedcontenttypetest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"gzipnotsupportedcontenttypetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "gzipnotsupportedcontenttypetest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "gzipnotsupportedcontenttypetest-admin", "namespace": "default", - "resourceVersion": "36536", + "resourceVersion": "55640", "selfLink": "/api/v1/namespaces/default/services/gzipnotsupportedcontenttypetest-admin", - "uid": "0f400bd9-4794-11ea-829a-062d8f98984d" + "uid": "5c8fe371-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.168.168", + "clusterIP": "10.97.214.216", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "gzipnotsupportedcontenttypetest-admin", - "nodePort": 32136, + "nodePort": 30591, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gzipnotsupportedcontenttypetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gzipnotsupportedcontenttypetest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8097},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8460}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:05Z", "labels": { "kat-ambassador-id": "gzipnotsupportedcontenttypetest", "scope": "AmbassadorTest" }, "name": "gzipnotsupportedcontenttypetest-http", "namespace": "default", - "resourceVersion": "36542", + "resourceVersion": "55647", "selfLink": "/api/v1/namespaces/default/services/gzipnotsupportedcontenttypetest-http", - "uid": "0f4e296c-4794-11ea-829a-062d8f98984d" + "uid": "5c9fff87-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.217.225", + "clusterIP": "10.111.144.63", "ports": [ { "name": "http", diff --git a/python/tests/gold/gziptest/bootstrap-ads.json b/python/tests/gold/gziptest/bootstrap-ads.json index c45b0c5621..b620c05bb4 100644 --- a/python/tests/gold/gziptest/bootstrap-ads.json +++ b/python/tests/gold/gziptest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "gziptest-default", "id": "test-id" diff --git a/python/tests/gold/gziptest/snapshots/econf.json b/python/tests/gold/gziptest/snapshots/econf.json index baf0905e82..180a9fb0ab 100644 --- a/python/tests/gold/gziptest/snapshots/econf.json +++ b/python/tests/gold/gziptest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -299,15 +315,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/gziptest/snapshots/snapshot.yaml b/python/tests/gold/gziptest/snapshots/snapshot.yaml index 3820afa3eb..851fc74882 100644 --- a/python/tests/gold/gziptest/snapshots/snapshot.yaml +++ b/python/tests/gold/gziptest/snapshots/snapshot.yaml @@ -20,40 +20,45 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gziptest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8096},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8459}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n gzip:\n min_content_length: 32\n window_bits: 15\n content_type:\n - text/plain\nambassador_id: gziptest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: gziptest-http\nprefix: /target/\nservice: gziptest-http\nambassador_id: gziptest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n gzip:\\n min_content_length: 32\\n window_bits: 15\\n content_type:\\n - text/plain\\nambassador_id: gziptest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: gziptest-http\\nprefix: /target/\\nservice: gziptest-http\\nambassador_id: gziptest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gziptest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"gziptest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "gziptest", "scope": "AmbassadorTest" }, - "name": "gziptest-http", + "name": "gziptest", "namespace": "default", - "resourceVersion": "36520", - "selfLink": "/api/v1/namespaces/default/services/gziptest-http", - "uid": "0f15d30a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55613", + "selfLink": "/api/v1/namespaces/default/services/gziptest", + "uid": "5c4e8886-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.80.109", + "clusterIP": "10.106.178.66", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 31013, "port": 80, "protocol": "TCP", - "targetPort": 8096 + "targetPort": 8080 }, { "name": "https", + "nodePort": 31067, "port": 443, "protocol": "TCP", - "targetPort": 8459 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "gziptest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -64,38 +69,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n gzip:\n min_content_length: 32\n window_bits: 15\n content_type:\n - text/plain\nambassador_id: gziptest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: gziptest-http\nprefix: /target/\nservice: gziptest-http\nambassador_id: gziptest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n gzip:\\n min_content_length: 32\\n window_bits: 15\\n content_type:\\n - text/plain\\nambassador_id: gziptest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: gziptest-http\\nprefix: /target/\\nservice: gziptest-http\\nambassador_id: gziptest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gziptest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"gziptest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\",\"service\":\"gziptest-admin\"},\"name\":\"gziptest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"gziptest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"gziptest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "gziptest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "gziptest-admin" }, - "name": "gziptest", + "name": "gziptest-admin", "namespace": "default", - "resourceVersion": "36507", - "selfLink": "/api/v1/namespaces/default/services/gziptest", - "uid": "0ef929db-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55617", + "selfLink": "/api/v1/namespaces/default/services/gziptest-admin", + "uid": "5c56c49d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.146.25", + "clusterIP": "10.100.122.170", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 31935, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 31340, - "port": 443, + "name": "gziptest-admin", + "nodePort": 30471, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -113,37 +110,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\",\"service\":\"gziptest-admin\"},\"name\":\"gziptest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"gziptest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"gziptest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"gziptest\",\"scope\":\"AmbassadorTest\"},\"name\":\"gziptest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8096},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8459}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:42Z", + "creationTimestamp": "2020-02-19T23:20:04Z", "labels": { "kat-ambassador-id": "gziptest", - "scope": "AmbassadorTest", - "service": "gziptest-admin" + "scope": "AmbassadorTest" }, - "name": "gziptest-admin", + "name": "gziptest-http", "namespace": "default", - "resourceVersion": "36512", - "selfLink": "/api/v1/namespaces/default/services/gziptest-admin", - "uid": "0f038696-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55623", + "selfLink": "/api/v1/namespaces/default/services/gziptest-http", + "uid": "5c649116-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.21.2", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.107.166.146", "ports": [ { - "name": "gziptest-admin", - "nodePort": 31869, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8096 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8459 } ], "selector": { - "service": "gziptest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/hostcrdcleartext/bootstrap-ads.json b/python/tests/gold/hostcrdcleartext/bootstrap-ads.json index bda6491d28..aa3515cdc2 100644 --- a/python/tests/gold/hostcrdcleartext/bootstrap-ads.json +++ b/python/tests/gold/hostcrdcleartext/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "hostcrdcleartext-default", "id": "test-id" diff --git a/python/tests/gold/hostcrdcleartext/snapshots/econf.json b/python/tests/gold/hostcrdcleartext/snapshots/econf.json index 97001cabfc..4de44ba4c6 100644 --- a/python/tests/gold/hostcrdcleartext/snapshots/econf.json +++ b/python/tests/gold/hostcrdcleartext/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -284,15 +300,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/hostcrdcleartext/snapshots/snapshot.yaml b/python/tests/gold/hostcrdcleartext/snapshots/snapshot.yaml index a61a29deac..55e182d1cd 100644 --- a/python/tests/gold/hostcrdcleartext/snapshots/snapshot.yaml +++ b/python/tests/gold/hostcrdcleartext/snapshots/snapshot.yaml @@ -12,7 +12,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\"},\"name\":\"cleartext-host\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrdcleartext\"],\"hostname\":\"hostcrdcleartext\",\"requestPolicy\":{\"insecure\":{\"action\":\"Route\"}},\"selector\":{\"matchLabels\":{\"hostname\":\"host-cleartext\"}}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:39:59Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrdcleartext", @@ -20,9 +20,9 @@ }, "name": "cleartext-host", "namespace": "default", - "resourceVersion": "13982", + "resourceVersion": "55787", "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/cleartext-host", - "uid": "df3a4f3f-4d6a-11ea-8dea-16f70b0b03ef" + "uid": "5e33bc3a-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -57,7 +57,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"host-cleartext\",\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\"},\"name\":\"cleartext-target-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrdcleartext\"],\"prefix\":\"/target/\",\"service\":\"hostcrdcleartext-http\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:39:59Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { "hostname": "host-cleartext", @@ -66,9 +66,9 @@ }, "name": "cleartext-target-mapping", "namespace": "default", - "resourceVersion": "13983", + "resourceVersion": "55790", "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/cleartext-target-mapping", - "uid": "df440660-4d6a-11ea-8dea-16f70b0b03ef" + "uid": "5e3bd151-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ @@ -94,7 +94,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdcleartext\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrdcleartext\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T07:39:59Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrdcleartext", @@ -102,24 +102,24 @@ }, "name": "hostcrdcleartext", "namespace": "default", - "resourceVersion": "13972", + "resourceVersion": "55778", "selfLink": "/api/v1/namespaces/default/services/hostcrdcleartext", - "uid": "df17fd88-4d6a-11ea-8dea-16f70b0b03ef" + "uid": "5e1ccc08-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.125.14", + "clusterIP": "10.104.65.218", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30321, + "nodePort": 30478, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30167, + "nodePort": 32337, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -142,7 +142,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrdcleartext-admin\"},\"name\":\"hostcrdcleartext-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrdcleartext-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrdcleartext\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T07:39:59Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { "kat-ambassador-id": "hostcrdcleartext", "scope": "AmbassadorTest", @@ -150,17 +150,17 @@ }, "name": "hostcrdcleartext-admin", "namespace": "default", - "resourceVersion": "13976", + "resourceVersion": "55782", "selfLink": "/api/v1/namespaces/default/services/hostcrdcleartext-admin", - "uid": "df26497f-4d6a-11ea-8dea-16f70b0b03ef" + "uid": "5e25e92f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.237.21", + "clusterIP": "10.101.101.233", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "hostcrdcleartext-admin", - "nodePort": 30938, + "nodePort": 31881, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -181,33 +181,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdcleartext-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8082},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8445}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdcleartext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdcleartext-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8103},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8466}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T07:39:59Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "hostcrdcleartext", "scope": "AmbassadorTest" }, "name": "hostcrdcleartext-http", "namespace": "default", - "resourceVersion": "13988", + "resourceVersion": "55794", "selfLink": "/api/v1/namespaces/default/services/hostcrdcleartext-http", - "uid": "df4fafe2-4d6a-11ea-8dea-16f70b0b03ef" + "uid": "5e4849a9-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.135.104", + "clusterIP": "10.99.204.164", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8082 + "targetPort": 8103 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8445 + "targetPort": 8466 } ], "selector": { diff --git a/python/tests/gold/hostcrddouble/bootstrap-ads.json b/python/tests/gold/hostcrddouble/bootstrap-ads.json index 78c6ad996c..2b52a162e0 100644 --- a/python/tests/gold/hostcrddouble/bootstrap-ads.json +++ b/python/tests/gold/hostcrddouble/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "hostcrddouble-default", "id": "test-id" diff --git a/python/tests/gold/hostcrddouble/snapshots/aconf.json b/python/tests/gold/hostcrddouble/snapshots/aconf.json index c743735e69..b1084ad6a2 100644 --- a/python/tests/gold/hostcrddouble/snapshots/aconf.json +++ b/python/tests/gold/hostcrddouble/snapshots/aconf.json @@ -225,14 +225,14 @@ "kind": "Secret", "location": "test-tlscontext-secret-2.default.1", "metadata_labels": { - "kat-ambassador-id": "hostcrddouble", + "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, "name": "test-tlscontext-secret-2", "namespace": "default", "rkey": "test-tlscontext-secret-2.default.1", "secret_type": "kubernetes.io/tls", - "serialization": "ambassador_id: hostcrddouble\napiVersion: getambassador.io/v2\nkind: Secret\nmetadata_labels:\n kat-ambassador-id: hostcrddouble\n scope: AmbassadorTest\nname: test-tlscontext-secret-2\nnamespace: default\nsecret_type: kubernetes.io/tls\ntls_crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\ntls_key: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\n", + "serialization": "ambassador_id: hostcrddouble\napiVersion: getambassador.io/v2\nkind: Secret\nmetadata_labels:\n kat-ambassador-id: tlscontexttest\n scope: AmbassadorTest\nname: test-tlscontext-secret-2\nnamespace: default\nsecret_type: kubernetes.io/tls\ntls_crt: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\ntls_key: LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\n", "tls_crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", "tls_key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==" } @@ -353,7 +353,7 @@ "apiVersion": "getambassador.io/v2", "kind": "Secret", "metadata_labels": { - "kat-ambassador-id": "hostcrddouble", + "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, "name": "test-tlscontext-secret-2", diff --git a/python/tests/gold/hostcrddouble/snapshots/econf.json b/python/tests/gold/hostcrddouble/snapshots/econf.json index ff851703f8..2256b1539f 100644 --- a/python/tests/gold/hostcrddouble/snapshots/econf.json +++ b/python/tests/gold/hostcrddouble/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -99,14 +112,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -362,8 +378,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -391,14 +406,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -603,8 +621,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -630,7 +647,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { @@ -645,14 +663,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -775,8 +796,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false @@ -789,14 +809,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -897,15 +920,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/hostcrddouble/snapshots/snapshot.yaml b/python/tests/gold/hostcrddouble/snapshots/snapshot.yaml index f8bf2533c5..2532b9f190 100644 --- a/python/tests/gold/hostcrddouble/snapshots/snapshot.yaml +++ b/python/tests/gold/hostcrddouble/snapshots/snapshot.yaml @@ -9,20 +9,20 @@ "kind": "Host", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-1\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrddouble\"],\"hostname\":\"tls-context-host-1\",\"selector\":{\"matchLabels\":{\"hostname\":\"tls-context-host-1\"}},\"tlsSecret\":{\"name\":\"test-tlscontext-secret-1\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-2\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrddouble\"],\"hostname\":\"tls-context-host-2\",\"selector\":{\"matchLabels\":{\"hostname\":\"tls-context-host-2\"}},\"tlsSecret\":{\"name\":\"test-tlscontext-secret-2\"}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "host-1", + "name": "host-2", "namespace": "default", - "resourceVersion": "14015", - "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/host-1", - "uid": "dfe03e10-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55822", + "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/host-2", + "uid": "5e981f04-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -31,14 +31,14 @@ "ambassador_id": [ "hostcrddouble" ], - "hostname": "tls-context-host-1", + "hostname": "tls-context-host-2", "selector": { "matchLabels": { - "hostname": "tls-context-host-1" + "hostname": "tls-context-host-2" } }, "tlsSecret": { - "name": "test-tlscontext-secret-1" + "name": "test-tlscontext-secret-2" } } }, @@ -47,20 +47,20 @@ "kind": "Host", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-2\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrddouble\"],\"hostname\":\"tls-context-host-2\",\"selector\":{\"matchLabels\":{\"hostname\":\"tls-context-host-2\"}},\"tlsSecret\":{\"name\":\"test-tlscontext-secret-2\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-1\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrddouble\"],\"hostname\":\"tls-context-host-1\",\"selector\":{\"matchLabels\":{\"hostname\":\"tls-context-host-1\"}},\"tlsSecret\":{\"name\":\"test-tlscontext-secret-1\"}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "host-2", + "name": "host-1", "namespace": "default", - "resourceVersion": "14019", - "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/host-2", - "uid": "dfeaee99-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55820", + "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/host-1", + "uid": "5e924a48-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -69,14 +69,14 @@ "ambassador_id": [ "hostcrddouble" ], - "hostname": "tls-context-host-2", + "hostname": "tls-context-host-1", "selector": { "matchLabels": { - "hostname": "tls-context-host-2" + "hostname": "tls-context-host-1" } }, "tlsSecret": { - "name": "test-tlscontext-secret-2" + "name": "test-tlscontext-secret-1" } } } @@ -90,29 +90,29 @@ "kind": "Mapping", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"tls-context-host-1\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-1-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrddouble\"],\"host\":\"tls-context-host-1\",\"prefix\":\"/target/\",\"service\":\"hostcrddouble-http-target1\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"tls-context-host-2\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-2-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrddouble\"],\"host\":\"tls-context-host-2\",\"prefix\":\"/target/\",\"service\":\"hostcrddouble-http-target2\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { - "hostname": "tls-context-host-1", + "hostname": "tls-context-host-2", "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "host-1-mapping", + "name": "host-2-mapping", "namespace": "default", - "resourceVersion": "14020", - "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/host-1-mapping", - "uid": "dff41a36-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55826", + "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/host-2-mapping", + "uid": "5ea4953c-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ "hostcrddouble" ], - "host": "tls-context-host-1", + "host": "tls-context-host-2", "prefix": "/target/", - "service": "hostcrddouble-http-target1" + "service": "hostcrddouble-http-target2" } }, { @@ -120,29 +120,29 @@ "kind": "Mapping", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"tls-context-host-2\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-2-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrddouble\"],\"host\":\"tls-context-host-2\",\"prefix\":\"/target/\",\"service\":\"hostcrddouble-http-target2\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"tls-context-host-1\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"host-1-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrddouble\"],\"host\":\"tls-context-host-1\",\"prefix\":\"/target/\",\"service\":\"hostcrddouble-http-target1\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "generation": 1, "labels": { - "hostname": "tls-context-host-2", + "hostname": "tls-context-host-1", "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "host-2-mapping", + "name": "host-1-mapping", "namespace": "default", - "resourceVersion": "14021", - "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/host-2-mapping", - "uid": "e00042b3-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55824", + "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/host-1-mapping", + "uid": "5e9e4053-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ "hostcrddouble" ], - "host": "tls-context-host-2", + "host": "tls-context-host-1", "prefix": "/target/", - "service": "hostcrddouble-http-target2" + "service": "hostcrddouble-http-target1" } } ], @@ -156,48 +156,48 @@ { "apiVersion": "v1", "data": { - "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", - "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K" + "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", + "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==" }, "kind": "Secret", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-1\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-2\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { - "kat-ambassador-id": "hostcrddouble", + "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, - "name": "test-tlscontext-secret-1", + "name": "test-tlscontext-secret-2", "namespace": "default", - "resourceVersion": "14013", - "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-1", - "uid": "dfc7411e-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "60447", + "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-2", + "uid": "5e8c3f1f-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" }, { "apiVersion": "v1", "data": { - "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", - "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==" + "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", + "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K" }, "kind": "Secret", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-2\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-1\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "test-tlscontext-secret-2", + "name": "test-tlscontext-secret-1", "namespace": "default", - "resourceVersion": "14014", - "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-2", - "uid": "dfd2ca5e-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55818", + "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-1", + "uid": "5e84b13a-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -208,37 +208,30 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrddouble\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrddouble-admin\"},\"name\":\"hostcrddouble-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrddouble-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrddouble\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrddouble", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "hostcrddouble-admin" }, - "name": "hostcrddouble", + "name": "hostcrddouble-admin", "namespace": "default", - "resourceVersion": "14000", - "selfLink": "/api/v1/namespaces/default/services/hostcrddouble", - "uid": "df8f5bb0-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55811", + "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-admin", + "uid": "5e71305a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.126.28", + "clusterIP": "10.99.183.89", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 31417, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 31405, - "port": 443, + "name": "hostcrddouble-admin", + "nodePort": 30975, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -256,37 +249,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrddouble-admin\"},\"name\":\"hostcrddouble-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrddouble-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrddouble\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble-http-target1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8104},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8467}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "hostcrddouble", - "scope": "AmbassadorTest", - "service": "hostcrddouble-admin" + "scope": "AmbassadorTest" }, - "name": "hostcrddouble-admin", + "name": "hostcrddouble-http-target1", "namespace": "default", - "resourceVersion": "14005", - "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-admin", - "uid": "dfa6a341-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55828", + "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-http-target1", + "uid": "5eadaa3d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.105.13", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.100.36.240", "ports": [ { - "name": "hostcrddouble-admin", - "nodePort": 30135, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8104 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8467 } ], "selector": { - "service": "hostcrddouble" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -297,33 +293,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble-http-target1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8083},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8446}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble-http-target2\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8105},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8468}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "hostcrddouble-http-target1", + "name": "hostcrddouble-http-target2", "namespace": "default", - "resourceVersion": "14023", - "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-http-target1", - "uid": "e00a79c4-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55832", + "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-http-target2", + "uid": "5ebf707b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.68.92", + "clusterIP": "10.104.36.63", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8083 + "targetPort": 8105 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8446 + "targetPort": 8468 } ], "selector": { @@ -341,40 +337,44 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble-http-target2\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8084},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8447}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrddouble\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrddouble\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrddouble\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T07:40:00Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrddouble", "scope": "AmbassadorTest" }, - "name": "hostcrddouble-http-target2", + "name": "hostcrddouble", "namespace": "default", - "resourceVersion": "14026", - "selfLink": "/api/v1/namespaces/default/services/hostcrddouble-http-target2", - "uid": "e0185ff9-4d6a-11ea-8dea-16f70b0b03ef" + "resourceVersion": "55807", + "selfLink": "/api/v1/namespaces/default/services/hostcrddouble", + "uid": "5e697e6d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.38.223", + "clusterIP": "10.101.223.139", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 32377, "port": 80, "protocol": "TCP", - "targetPort": 8084 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30843, "port": 443, "protocol": "TCP", - "targetPort": 8447 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "hostcrddouble" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/hostcrdmanualcontext/bootstrap-ads.json b/python/tests/gold/hostcrdmanualcontext/bootstrap-ads.json index cb889f053c..24277f566c 100644 --- a/python/tests/gold/hostcrdmanualcontext/bootstrap-ads.json +++ b/python/tests/gold/hostcrdmanualcontext/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "hostcrdmanualcontext-default", "id": "test-id" diff --git a/python/tests/gold/hostcrdmanualcontext/snapshots/econf.json b/python/tests/gold/hostcrdmanualcontext/snapshots/econf.json index 715361f15f..c4d370bbb5 100644 --- a/python/tests/gold/hostcrdmanualcontext/snapshots/econf.json +++ b/python/tests/gold/hostcrdmanualcontext/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -274,8 +290,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -305,7 +320,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/hostcrdmanualcontext/snapshots/snapshot.yaml b/python/tests/gold/hostcrdmanualcontext/snapshots/snapshot.yaml index 70690f9f99..e3d2f58d29 100644 --- a/python/tests/gold/hostcrdmanualcontext/snapshots/snapshot.yaml +++ b/python/tests/gold/hostcrdmanualcontext/snapshots/snapshot.yaml @@ -12,7 +12,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"manual-host\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrdmanualcontext\"],\"hostname\":\"hostcrdmanualcontext\",\"selector\":{\"matchLabels\":{\"hostname\":\"manual-hostname\"}},\"tlsSecret\":{\"name\":\"manual-secret\"}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrdmanualcontext", @@ -20,9 +20,9 @@ }, "name": "manual-host", "namespace": "default", - "resourceVersion": "37096", + "resourceVersion": "55761", "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/manual-host", - "uid": "b33b8c3d-4d70-11ea-90a4-12ebe6b5b859" + "uid": "5dde0f11-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -55,7 +55,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"manual-hostname\",\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"manual-target-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrdmanualcontext\"],\"prefix\":\"/target/\",\"service\":\"hostcrdmanualcontext-http\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "generation": 1, "labels": { "hostname": "manual-hostname", @@ -64,9 +64,9 @@ }, "name": "manual-target-mapping", "namespace": "default", - "resourceVersion": "37098", + "resourceVersion": "55764", "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/manual-target-mapping", - "uid": "b34eff7e-4d70-11ea-90a4-12ebe6b5b859" + "uid": "5deb320a-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ @@ -89,7 +89,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"TLSContext\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"manual-host-context\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrdmanualcontext\"],\"hosts\":[\"hostcrdmanualcontext\"],\"max_tls_version\":\"v1.3\",\"min_tls_version\":\"v1.2\",\"secret\":\"manual-secret\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrdmanualcontext", @@ -97,9 +97,9 @@ }, "name": "manual-host-context", "namespace": "default", - "resourceVersion": "37097", + "resourceVersion": "55762", "selfLink": "/apis/getambassador.io/v2/namespaces/default/tlscontexts/manual-host-context", - "uid": "b3432949-4d70-11ea-90a4-12ebe6b5b859" + "uid": "5de3ce1d-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ @@ -128,16 +128,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"manual-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { "kat-ambassador-id": "hostcrdmanualcontext", "scope": "AmbassadorTest" }, "name": "manual-secret", "namespace": "default", - "resourceVersion": "37092", + "resourceVersion": "55759", "selfLink": "/api/v1/namespaces/default/secrets/manual-secret", - "uid": "b301a07a-4d70-11ea-90a4-12ebe6b5b859" + "uid": "5dd75fb9-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -148,40 +148,44 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdmanualcontext-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdmanualcontext\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrdmanualcontext\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrdmanualcontext", "scope": "AmbassadorTest" }, - "name": "hostcrdmanualcontext-http", + "name": "hostcrdmanualcontext", "namespace": "default", - "resourceVersion": "37100", - "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext-http", - "uid": "b35e91da-4d70-11ea-90a4-12ebe6b5b859" + "resourceVersion": "55749", + "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext", + "uid": "5dbedb45-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.143.108", + "clusterIP": "10.104.225.111", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 30539, "port": 80, "protocol": "TCP", - "targetPort": 8081 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30813, "port": 443, "protocol": "TCP", - "targetPort": 8444 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "hostcrdmanualcontext" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -192,37 +196,30 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdmanualcontext\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrdmanualcontext\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrdmanualcontext-admin\"},\"name\":\"hostcrdmanualcontext-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrdmanualcontext-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrdmanualcontext\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrdmanualcontext", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "hostcrdmanualcontext-admin" }, - "name": "hostcrdmanualcontext", + "name": "hostcrdmanualcontext-admin", "namespace": "default", - "resourceVersion": "37082", - "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext", - "uid": "b2d83116-4d70-11ea-90a4-12ebe6b5b859" + "resourceVersion": "55754", + "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext-admin", + "uid": "5dca74f4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.137.36", + "clusterIP": "10.107.113.52", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 32052, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 32323, - "port": 443, + "name": "hostcrdmanualcontext-admin", + "nodePort": 30792, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -240,37 +237,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrdmanualcontext-admin\"},\"name\":\"hostcrdmanualcontext-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrdmanualcontext-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrdmanualcontext\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdmanualcontext\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdmanualcontext-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8102},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8465}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T08:21:42Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { "kat-ambassador-id": "hostcrdmanualcontext", - "scope": "AmbassadorTest", - "service": "hostcrdmanualcontext-admin" + "scope": "AmbassadorTest" }, - "name": "hostcrdmanualcontext-admin", + "name": "hostcrdmanualcontext-http", "namespace": "default", - "resourceVersion": "37086", - "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext-admin", - "uid": "b2e34236-4d70-11ea-90a4-12ebe6b5b859" + "resourceVersion": "55767", + "selfLink": "/api/v1/namespaces/default/services/hostcrdmanualcontext-http", + "uid": "5dfc16ab-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.145.25", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.104.197.86", "ports": [ { - "name": "hostcrdmanualcontext-admin", - "nodePort": 32404, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8102 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8465 } ], "selector": { - "service": "hostcrdmanualcontext" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/hostcrdno8080/bootstrap-ads.json b/python/tests/gold/hostcrdno8080/bootstrap-ads.json index 11e27babee..5890096767 100644 --- a/python/tests/gold/hostcrdno8080/bootstrap-ads.json +++ b/python/tests/gold/hostcrdno8080/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "hostcrdno8080-default", "id": "test-id" diff --git a/python/tests/gold/hostcrdno8080/snapshots/econf.json b/python/tests/gold/hostcrdno8080/snapshots/econf.json index b5f7468733..24d3e43460 100644 --- a/python/tests/gold/hostcrdno8080/snapshots/econf.json +++ b/python/tests/gold/hostcrdno8080/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -274,8 +290,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -301,7 +316,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/hostcrdno8080/snapshots/snapshot.yaml b/python/tests/gold/hostcrdno8080/snapshots/snapshot.yaml index a8e0a87bb3..85d95d7cc8 100644 --- a/python/tests/gold/hostcrdno8080/snapshots/snapshot.yaml +++ b/python/tests/gold/hostcrdno8080/snapshots/snapshot.yaml @@ -12,7 +12,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080-host\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrdno8080\"],\"hostname\":\"hostcrdno8080\",\"requestPolicy\":{\"insecure\":{\"additionalPort\":-1}},\"selector\":{\"matchLabels\":{\"hostname\":\"hostcrdno8080\"}},\"tlsSecret\":{\"name\":\"hostcrdno8080-secret\"}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrdno8080", @@ -20,9 +20,9 @@ }, "name": "hostcrdno8080-host", "namespace": "default", - "resourceVersion": "38791", + "resourceVersion": "55732", "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/hostcrdno8080-host", - "uid": "453e49b0-4db0-11ea-9775-0ad535286f1f" + "uid": "5d8b751a-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -60,7 +60,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"hostcrdno8080\",\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080-target-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrdno8080\"],\"prefix\":\"/target/\",\"service\":\"hostcrdno8080-http\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T15:56:46Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "generation": 1, "labels": { "hostname": "hostcrdno8080", @@ -69,9 +69,9 @@ }, "name": "hostcrdno8080-target-mapping", "namespace": "default", - "resourceVersion": "38792", + "resourceVersion": "55733", "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/hostcrdno8080-target-mapping", - "uid": "45487a4b-4db0-11ea-9775-0ad535286f1f" + "uid": "5d92ff3a-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ @@ -100,16 +100,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "kat-ambassador-id": "hostcrdno8080", "scope": "AmbassadorTest" }, "name": "hostcrdno8080-secret", "namespace": "default", - "resourceVersion": "38790", + "resourceVersion": "55731", "selfLink": "/api/v1/namespaces/default/secrets/hostcrdno8080-secret", - "uid": "4538be30-4db0-11ea-9775-0ad535286f1f" + "uid": "5d85c119-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -122,7 +122,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrdno8080\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrdno8080", @@ -130,24 +130,24 @@ }, "name": "hostcrdno8080", "namespace": "default", - "resourceVersion": "38780", + "resourceVersion": "55719", "selfLink": "/api/v1/namespaces/default/services/hostcrdno8080", - "uid": "45210594-4db0-11ea-9775-0ad535286f1f" + "uid": "5d5c50ff-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.235.196", + "clusterIP": "10.103.211.138", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32676, + "nodePort": 30901, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30913, + "nodePort": 32206, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -170,7 +170,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrdno8080-admin\"},\"name\":\"hostcrdno8080-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrdno8080-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrdno8080\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "kat-ambassador-id": "hostcrdno8080", "scope": "AmbassadorTest", @@ -178,17 +178,17 @@ }, "name": "hostcrdno8080-admin", "namespace": "default", - "resourceVersion": "38784", + "resourceVersion": "55725", "selfLink": "/api/v1/namespaces/default/services/hostcrdno8080-admin", - "uid": "4529c2fa-4db0-11ea-9775-0ad535286f1f" + "uid": "5d720ee4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.244.82", + "clusterIP": "10.103.75.44", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "hostcrdno8080-admin", - "nodePort": 30149, + "nodePort": 32713, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -209,33 +209,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdno8080\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdno8080-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8101},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8464}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T15:56:46Z", + "creationTimestamp": "2020-02-19T23:20:07Z", "labels": { "kat-ambassador-id": "hostcrdno8080", "scope": "AmbassadorTest" }, "name": "hostcrdno8080-http", "namespace": "default", - "resourceVersion": "38794", + "resourceVersion": "55735", "selfLink": "/api/v1/namespaces/default/services/hostcrdno8080-http", - "uid": "4551cb03-4db0-11ea-9775-0ad535286f1f" + "uid": "5d9a9e07-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.231.215", + "clusterIP": "10.106.64.248", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8081 + "targetPort": 8101 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8444 + "targetPort": 8464 } ], "selector": { diff --git a/python/tests/gold/hostcrdsingle/bootstrap-ads.json b/python/tests/gold/hostcrdsingle/bootstrap-ads.json index 177eb03b67..ef2799572c 100644 --- a/python/tests/gold/hostcrdsingle/bootstrap-ads.json +++ b/python/tests/gold/hostcrdsingle/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "hostcrdsingle-default", "id": "test-id" diff --git a/python/tests/gold/hostcrdsingle/snapshots/econf.json b/python/tests/gold/hostcrdsingle/snapshots/econf.json index 265c228cc8..77e092783c 100644 --- a/python/tests/gold/hostcrdsingle/snapshots/econf.json +++ b/python/tests/gold/hostcrdsingle/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -274,8 +290,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -301,7 +316,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { @@ -316,14 +332,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -418,15 +437,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/hostcrdsingle/snapshots/snapshot.yaml b/python/tests/gold/hostcrdsingle/snapshots/snapshot.yaml index b2896d2009..3d95e22682 100644 --- a/python/tests/gold/hostcrdsingle/snapshots/snapshot.yaml +++ b/python/tests/gold/hostcrdsingle/snapshots/snapshot.yaml @@ -12,7 +12,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Host\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle-host\",\"namespace\":\"default\"},\"spec\":{\"acmeProvider\":{\"authority\":\"none\"},\"ambassador_id\":[\"hostcrdsingle\"],\"hostname\":\"hostcrdsingle\",\"selector\":{\"matchLabels\":{\"hostname\":\"hostcrdsingle\"}},\"tlsSecret\":{\"name\":\"hostcrdsingle-secret\"}}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "generation": 1, "labels": { "kat-ambassador-id": "hostcrdsingle", @@ -20,9 +20,9 @@ }, "name": "hostcrdsingle-host", "namespace": "default", - "resourceVersion": "38767", + "resourceVersion": "55703", "selfLink": "/apis/getambassador.io/v2/namespaces/default/hosts/hostcrdsingle-host", - "uid": "44f266bb-4db0-11ea-9775-0ad535286f1f" + "uid": "5d2ebf6a-536e-11ea-85dd-167682b5c255" }, "spec": { "acmeProvider": { @@ -55,7 +55,7 @@ "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"getambassador.io/v2\",\"kind\":\"Mapping\",\"metadata\":{\"annotations\":{},\"labels\":{\"hostname\":\"hostcrdsingle\",\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle-target-mapping\",\"namespace\":\"default\"},\"spec\":{\"ambassador_id\":[\"hostcrdsingle\"],\"prefix\":\"/target/\",\"service\":\"hostcrdsingle-http\"}}\n" }, "clusterName": "", - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "generation": 1, "labels": { "hostname": "hostcrdsingle", @@ -64,9 +64,9 @@ }, "name": "hostcrdsingle-target-mapping", "namespace": "default", - "resourceVersion": "38768", + "resourceVersion": "55705", "selfLink": "/apis/getambassador.io/v2/namespaces/default/mappings/hostcrdsingle-target-mapping", - "uid": "44fb5eae-4db0-11ea-9775-0ad535286f1f" + "uid": "5d3525bc-536e-11ea-85dd-167682b5c255" }, "spec": { "ambassador_id": [ @@ -95,16 +95,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "kat-ambassador-id": "hostcrdsingle", "scope": "AmbassadorTest" }, "name": "hostcrdsingle-secret", "namespace": "default", - "resourceVersion": "38763", + "resourceVersion": "55702", "selfLink": "/api/v1/namespaces/default/secrets/hostcrdsingle-secret", - "uid": "44c1620c-4db0-11ea-9775-0ad535286f1f" + "uid": "5d28202a-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -117,7 +117,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"hostcrdsingle\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T15:56:44Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "hostcrdsingle", @@ -125,24 +125,24 @@ }, "name": "hostcrdsingle", "namespace": "default", - "resourceVersion": "38753", + "resourceVersion": "55691", "selfLink": "/api/v1/namespaces/default/services/hostcrdsingle", - "uid": "44a9743d-4db0-11ea-9775-0ad535286f1f" + "uid": "5d120bb0-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.210.42", + "clusterIP": "10.101.243.208", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31269, + "nodePort": 32074, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31595, + "nodePort": 31194, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -165,7 +165,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\",\"service\":\"hostcrdsingle-admin\"},\"name\":\"hostcrdsingle-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"hostcrdsingle-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"hostcrdsingle\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "kat-ambassador-id": "hostcrdsingle", "scope": "AmbassadorTest", @@ -173,17 +173,17 @@ }, "name": "hostcrdsingle-admin", "namespace": "default", - "resourceVersion": "38757", + "resourceVersion": "55695", "selfLink": "/api/v1/namespaces/default/services/hostcrdsingle-admin", - "uid": "44b0d01d-4db0-11ea-9775-0ad535286f1f" + "uid": "5d19cead-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.225.64", + "clusterIP": "10.103.31.216", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "hostcrdsingle-admin", - "nodePort": 31202, + "nodePort": 31347, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -204,33 +204,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"hostcrdsingle\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostcrdsingle-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8100},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8463}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-12T15:56:45Z", + "creationTimestamp": "2020-02-19T23:20:06Z", "labels": { "kat-ambassador-id": "hostcrdsingle", "scope": "AmbassadorTest" }, "name": "hostcrdsingle-http", "namespace": "default", - "resourceVersion": "38770", + "resourceVersion": "55707", "selfLink": "/api/v1/namespaces/default/services/hostcrdsingle-http", - "uid": "45046661-4db0-11ea-9775-0ad535286f1f" + "uid": "5d3ca88b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.102.20", + "clusterIP": "10.104.69.201", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8100 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8463 } ], "selector": { diff --git a/python/tests/gold/linkerdheadermapping/bootstrap-ads.json b/python/tests/gold/linkerdheadermapping/bootstrap-ads.json index 8ae941813d..5aecef343f 100644 --- a/python/tests/gold/linkerdheadermapping/bootstrap-ads.json +++ b/python/tests/gold/linkerdheadermapping/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "linkerdheadermapping-default", "id": "test-id" diff --git a/python/tests/gold/linkerdheadermapping/snapshots/econf.json b/python/tests/gold/linkerdheadermapping/snapshots/econf.json index 72bc1792c8..e20cbeebba 100644 --- a/python/tests/gold/linkerdheadermapping/snapshots/econf.json +++ b/python/tests/gold/linkerdheadermapping/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -124,14 +137,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -548,15 +564,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/linkerdheadermapping/snapshots/snapshot.yaml b/python/tests/gold/linkerdheadermapping/snapshots/snapshot.yaml index 9d5cef2eba..e5ab58c0ec 100644 --- a/python/tests/gold/linkerdheadermapping/snapshots/snapshot.yaml +++ b/python/tests/gold/linkerdheadermapping/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n add_linkerd_headers: true\nambassador_id: linkerdheadermapping\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: linkerdheadermapping-http-addlinkerdonly\nprefix: /target_add_linkerd_header_only/\nservice: linkerdheadermapping-http-addlinkerdonly\nambassador_id: linkerdheadermapping\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: linkerdheadermapping-http-noheader\nprefix: /target_no_header/\nservice: linkerdheadermapping-http-noheader\nadd_linkerd_headers: false\nadd_request_headers:\n fruit:\n append: False\n value: orange\nambassador_id: linkerdheadermapping\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: linkerdheadermapping-http\nprefix: /target/\nservice: linkerdheadermapping-http\nadd_request_headers:\n fruit:\n append: False\n value: banana\nambassador_id: linkerdheadermapping\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n add_linkerd_headers: true\\nambassador_id: linkerdheadermapping\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: linkerdheadermapping-http-addlinkerdonly\\nprefix: /target_add_linkerd_header_only/\\nservice: linkerdheadermapping-http-addlinkerdonly\\nambassador_id: linkerdheadermapping\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: linkerdheadermapping-http-noheader\\nprefix: /target_no_header/\\nservice: linkerdheadermapping-http-noheader\\nadd_linkerd_headers: false\\nadd_request_headers:\\n fruit:\\n append: False\\n value: orange\\nambassador_id: linkerdheadermapping\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: linkerdheadermapping-http\\nprefix: /target/\\nservice: linkerdheadermapping-http\\nadd_request_headers:\\n fruit:\\n append: False\\n value: banana\\nambassador_id: linkerdheadermapping\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"linkerdheadermapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:48Z", + "creationTimestamp": "2020-02-19T23:20:11Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "linkerdheadermapping", @@ -31,24 +31,24 @@ }, "name": "linkerdheadermapping", "namespace": "default", - "resourceVersion": "36884", + "resourceVersion": "56013", "selfLink": "/api/v1/namespaces/default/services/linkerdheadermapping", - "uid": "12fa1e38-4794-11ea-829a-062d8f98984d" + "uid": "60695dfe-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.148.148", + "clusterIP": "10.109.16.39", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32528, + "nodePort": 32203, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30483, + "nodePort": 32455, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\",\"service\":\"linkerdheadermapping-admin\"},\"name\":\"linkerdheadermapping-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"linkerdheadermapping-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"linkerdheadermapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:48Z", + "creationTimestamp": "2020-02-19T23:20:11Z", "labels": { "kat-ambassador-id": "linkerdheadermapping", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "linkerdheadermapping-admin", "namespace": "default", - "resourceVersion": "36889", + "resourceVersion": "56017", "selfLink": "/api/v1/namespaces/default/services/linkerdheadermapping-admin", - "uid": "1304d965-4794-11ea-829a-062d8f98984d" + "uid": "6070c2da-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.90.222", + "clusterIP": "10.99.120.96", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "linkerdheadermapping-admin", - "nodePort": 31753, + "nodePort": 31254, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -110,33 +110,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8110},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8473}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8111},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8474}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:48Z", + "creationTimestamp": "2020-02-19T23:20:11Z", "labels": { "kat-ambassador-id": "linkerdheadermapping", "scope": "AmbassadorTest" }, "name": "linkerdheadermapping-http", "namespace": "default", - "resourceVersion": "36896", + "resourceVersion": "56024", "selfLink": "/api/v1/namespaces/default/services/linkerdheadermapping-http", - "uid": "1312d8f0-4794-11ea-829a-062d8f98984d" + "uid": "6085a8fe-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.150.125", + "clusterIP": "10.101.99.46", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8110 + "targetPort": 8111 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8473 + "targetPort": 8474 } ], "selector": { @@ -154,33 +154,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http-addlinkerdonly\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8112},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8475}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http-addlinkerdonly\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8113},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8476}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:49Z", + "creationTimestamp": "2020-02-19T23:20:12Z", "labels": { "kat-ambassador-id": "linkerdheadermapping", "scope": "AmbassadorTest" }, "name": "linkerdheadermapping-http-addlinkerdonly", "namespace": "default", - "resourceVersion": "36904", + "resourceVersion": "56030", "selfLink": "/api/v1/namespaces/default/services/linkerdheadermapping-http-addlinkerdonly", - "uid": "13283740-4794-11ea-829a-062d8f98984d" + "uid": "6097297e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.224.226", + "clusterIP": "10.103.57.149", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8112 + "targetPort": 8113 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8475 + "targetPort": 8476 } ], "selector": { @@ -198,33 +198,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http-noheader\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8111},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8474}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"linkerdheadermapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"linkerdheadermapping-http-noheader\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8112},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8475}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:48Z", + "creationTimestamp": "2020-02-19T23:20:11Z", "labels": { "kat-ambassador-id": "linkerdheadermapping", "scope": "AmbassadorTest" }, "name": "linkerdheadermapping-http-noheader", "namespace": "default", - "resourceVersion": "36900", + "resourceVersion": "56027", "selfLink": "/api/v1/namespaces/default/services/linkerdheadermapping-http-noheader", - "uid": "131bbbcb-4794-11ea-829a-062d8f98984d" + "uid": "6090153b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.20.1", + "clusterIP": "10.107.17.220", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8111 + "targetPort": 8112 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8474 + "targetPort": 8475 } ], "selector": { diff --git a/python/tests/gold/listeneridletimeout/bootstrap-ads.json b/python/tests/gold/listeneridletimeout/bootstrap-ads.json deleted file mode 100644 index dd04273d63..0000000000 --- a/python/tests/gold/listeneridletimeout/bootstrap-ads.json +++ /dev/null @@ -1,64 +0,0 @@ -{ - "admin": { - "access_log_path": "/tmp/admin_access_log", - "address": { - "socket_address": { - "address": "127.0.0.1", - "port_value": 8001 - } - } - }, - "dynamic_resources": { - "ads_config": { - "api_type": "GRPC", - "grpc_services": [ - { - "envoy_grpc": { - "cluster_name": "xds_cluster" - } - } - ] - }, - "cds_config": { - "ads": {} - }, - "lds_config": { - "ads": {} - } - }, - "node": { - "cluster": "listeneridletimeout-default", - "id": "test-id" - }, - "static_resources": { - "clusters": [ - { - "connect_timeout": "1s", - "dns_lookup_family": "V4_ONLY", - "http2_protocol_options": {}, - "lb_policy": "ROUND_ROBIN", - "load_assignment": { - "cluster_name": "cluster_127_0_0_1_8003", - "endpoints": [ - { - "lb_endpoints": [ - { - "endpoint": { - "address": { - "socket_address": { - "address": "127.0.0.1", - "port_value": 8003, - "protocol": "TCP" - } - } - } - } - ] - } - ] - }, - "name": "xds_cluster" - } - ] - } -} \ No newline at end of file diff --git a/python/tests/gold/listeneridletimeout/snapshots/aconf.json b/python/tests/gold/listeneridletimeout/snapshots/aconf.json deleted file mode 100644 index 62918152b7..0000000000 --- a/python/tests/gold/listeneridletimeout/snapshots/aconf.json +++ /dev/null @@ -1,193 +0,0 @@ -{ - "_errors": {}, - "_notices": { - "listeneridletimeout.default.2": [ - "apiVersion ambassador/v0 is deprecated, consider upgrading" - ] - }, - "_sources": { - "--diagnostics--": { - "_referenced_by": {}, - "apiVersion": "getambassador.io/v0", - "description": "The '--diagnostics--' source marks objects created by Ambassador to assist with diagnostic output.", - "kind": "Diagnostics", - "location": "--diagnostics--", - "name": "Ambassador Diagnostics", - "namespace": null, - "rkey": "--diagnostics--", - "serialization": null, - "version": "getambassador.io/v0" - }, - "--internal--": { - "_referenced_by": {}, - "apiVersion": "getambassador.io/v0", - "description": "The '--internal--' source marks objects created by Ambassador's internal logic.", - "kind": "Internal", - "location": "--internal--", - "name": "Ambassador Internals", - "namespace": null, - "rkey": "--internal--", - "serialization": null, - "version": "getambassador.io/v0" - }, - "k8s-listeneridletimeout-admin-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-admin-default", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest", - "service": "listeneridletimeout-admin" - }, - "name": "listeneridletimeout-admin", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-admin-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\n service: listeneridletimeout-admin\nname: listeneridletimeout-admin\nnamespace: default\n" - }, - "k8s-listeneridletimeout-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-default", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: listeneridletimeout\nnamespace: default\n" - }, - "k8s-listeneridletimeout-http-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-http-default", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout-http", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-http-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: listeneridletimeout-http\nnamespace: default\n" - }, - "listeneridletimeout.default.1": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v1", - "config": { - "listener_idle_timeout_ms": 30000 - }, - "kind": "Module", - "location": "listeneridletimeout.default.1", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "ambassador", - "namespace": "default", - "rkey": "listeneridletimeout.default.1", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: ambassador/v1\nconfig:\n listener_idle_timeout_ms: 30000\nkind: Module\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: ambassador\nnamespace: default\n" - }, - "listeneridletimeout.default.2": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v0", - "kind": "Mapping", - "location": "listeneridletimeout.default.2", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "config__dump", - "namespace": "default", - "prefix": "/config_dump", - "rewrite": "/config_dump", - "rkey": "listeneridletimeout.default.2", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: ambassador/v0\nkind: Mapping\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: config__dump\nnamespace: default\nprefix: /config_dump\nrewrite: /config_dump\nservice: http://127.0.0.1:8001\n", - "service": "http://127.0.0.1:8001" - } - }, - "mappings": { - "config__dump": { - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v0", - "kind": "Mapping", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "config__dump", - "namespace": "default", - "prefix": "/config_dump", - "rewrite": "/config_dump", - "service": "http://127.0.0.1:8001" - } - }, - "modules": { - "ambassador": { - "apiVersion": "getambassador.io/v1", - "kind": "Module", - "listener_idle_timeout_ms": 30000, - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "ambassador", - "namespace": "default" - } - }, - "service": { - "k8s-listeneridletimeout-admin-default": { - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest", - "service": "listeneridletimeout-admin" - }, - "name": "listeneridletimeout-admin", - "namespace": "default" - }, - "k8s-listeneridletimeout-default": { - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout", - "namespace": "default" - }, - "k8s-listeneridletimeout-http-default": { - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout-http", - "namespace": "default" - } - } -} \ No newline at end of file diff --git a/python/tests/gold/listeneridletimeout/snapshots/econf.json b/python/tests/gold/listeneridletimeout/snapshots/econf.json deleted file mode 100644 index 9a83776e49..0000000000 --- a/python/tests/gold/listeneridletimeout/snapshots/econf.json +++ /dev/null @@ -1,302 +0,0 @@ -{ - "static_resources": { - "clusters": [ - { - "connect_timeout": "3.000s", - "dns_lookup_family": "V4_ONLY", - "lb_policy": "ROUND_ROBIN", - "load_assignment": { - "cluster_name": "cluster_127_0_0_1_8877_default", - "endpoints": [ - { - "lb_endpoints": [ - { - "endpoint": { - "address": { - "socket_address": { - "address": "127.0.0.1", - "port_value": 8877, - "protocol": "TCP" - } - } - } - } - ] - } - ] - }, - "name": "cluster_127_0_0_1_8877_default", - "type": "STRICT_DNS" - }, - { - "connect_timeout": "3.000s", - "dns_lookup_family": "V4_ONLY", - "lb_policy": "ROUND_ROBIN", - "load_assignment": { - "cluster_name": "cluster_http___127_0_0_1_8001_default", - "endpoints": [ - { - "lb_endpoints": [ - { - "endpoint": { - "address": { - "socket_address": { - "address": "127.0.0.1", - "port_value": 8001, - "protocol": "TCP" - } - } - } - } - ] - } - ] - }, - "name": "cluster_http___127_0_0_1_8001_default", - "type": "STRICT_DNS" - } - ], - "listeners": [ - { - "address": { - "socket_address": { - "address": "0.0.0.0", - "port_value": 8080, - "protocol": "TCP" - } - }, - "filter_chains": [ - { - "filter_chain_match": {}, - "filters": [ - { - "config": { - "access_log": [ - { - "config": { - "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", - "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" - } - ], - "common_http_protocol_options": { - "idle_timeout": "30.000s" - }, - "http_filters": [ - { - "name": "envoy.cors" - }, - { - "name": "envoy.router" - } - ], - "http_protocol_options": { - "accept_http_10": false - }, - "normalize_path": true, - "route_config": { - "virtual_hosts": [ - { - "domains": [ - "*" - ], - "name": "ambassador-listener-8080-*", - "routes": [ - { - "match": { - "case_sensitive": true, - "headers": [ - { - "exact_match": "https", - "name": "x-forwarded-proto" - } - ], - "prefix": "/ambassador/v0/check_ready", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/check_ready", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "prefix": "/ambassador/v0/check_ready", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/check_ready", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "headers": [ - { - "exact_match": "https", - "name": "x-forwarded-proto" - } - ], - "prefix": "/ambassador/v0/check_alive", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/check_alive", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "prefix": "/ambassador/v0/check_alive", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/check_alive", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "headers": [ - { - "exact_match": "https", - "name": "x-forwarded-proto" - } - ], - "prefix": "/ambassador/v0/", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "prefix": "/ambassador/v0/", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_127_0_0_1_8877_default" - } - }, - "route": { - "cluster": "cluster_127_0_0_1_8877_default", - "prefix_rewrite": "/ambassador/v0/", - "priority": null, - "timeout": "10.000s" - } - }, - { - "match": { - "case_sensitive": true, - "headers": [ - { - "exact_match": "https", - "name": "x-forwarded-proto" - } - ], - "prefix": "/config_dump", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_http___127_0_0_1_8001_default" - } - }, - "route": { - "cluster": "cluster_http___127_0_0_1_8001_default", - "prefix_rewrite": "/config_dump", - "priority": null, - "timeout": "3.000s" - } - }, - { - "match": { - "case_sensitive": true, - "prefix": "/config_dump", - "runtime_fraction": { - "default_value": { - "denominator": "HUNDRED", - "numerator": 100 - }, - "runtime_key": "routing.traffic_shift.cluster_http___127_0_0_1_8001_default" - } - }, - "route": { - "cluster": "cluster_http___127_0_0_1_8001_default", - "prefix_rewrite": "/config_dump", - "priority": null, - "timeout": "3.000s" - } - } - ] - } - ] - }, - "server_name": "envoy", - "stat_prefix": "ingress_http", - "use_remote_address": true, - "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" - } - ], - "use_proxy_proto": false - } - ], - "listener_filters": [], - "name": "ambassador-listener-8080" - } - ] - } -} \ No newline at end of file diff --git a/python/tests/gold/listeneridletimeout/snapshots/ir.json b/python/tests/gold/listeneridletimeout/snapshots/ir.json deleted file mode 100644 index 247ea2512f..0000000000 --- a/python/tests/gold/listeneridletimeout/snapshots/ir.json +++ /dev/null @@ -1,597 +0,0 @@ -{ - "ambassador": { - "_active": true, - "_errored": false, - "_finalized": true, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "admin_port": 8001, - "debug_mode": false, - "default_label_domain": "ambassador", - "default_labels": {}, - "diag_port": 8877, - "diagnostics": { - "enabled": true, - "prefix": "/ambassador/v0/", - "rewrite": "/ambassador/v0/", - "service": "127.0.0.1:8877" - }, - "enable_http10": false, - "enable_ipv4": true, - "enable_ipv6": false, - "envoy_log_path": "/dev/fd/1", - "envoy_log_type": "text", - "kind": "IRAmbassador", - "listener_idle_timeout_ms": 30000, - "liveness_probe": { - "enabled": true, - "prefix": "/ambassador/v0/check_alive", - "rewrite": "/ambassador/v0/check_alive", - "service": "127.0.0.1:8877" - }, - "location": "listeneridletimeout.default.1", - "name": "ir.ambassador", - "namespace": "default", - "readiness_probe": { - "enabled": true, - "prefix": "/ambassador/v0/check_ready", - "rewrite": "/ambassador/v0/check_ready", - "service": "127.0.0.1:8877" - }, - "server_name": "envoy", - "service_port": 8080, - "use_ambassador_namespace_for_service_resolution": false, - "use_proxy_proto": false, - "use_remote_address": true, - "x_forwarded_proto_redirect": false, - "xff_num_trusted_hops": 0 - }, - "clusters": { - "cluster_127_0_0_1_8877_default": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8877, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_127_0_0_1_8877_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.1", - "name": "cluster_127_0_0_1_8877_default", - "namespace": "default", - "service": "127.0.0.1:8877", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8877, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8877" - ] - }, - "cluster_http___127_0_0_1_8001_default": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8001, - "_referenced_by": [ - "listeneridletimeout.default.2" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_http___127_0_0_1_8001_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.2", - "name": "cluster_http___127_0_0_1_8001_default", - "namespace": "default", - "service": "127.0.0.1:8001", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8001, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8001" - ] - } - }, - "filters": [ - { - "_active": true, - "_errored": false, - "_rkey": "ir.cors", - "config": {}, - "kind": "ir.cors", - "location": "--internal--", - "name": "cors", - "namespace": "default" - }, - { - "_active": true, - "_errored": false, - "_rkey": "ir.router", - "config": {}, - "kind": "ir.router", - "location": "--internal--", - "name": "router", - "namespace": "default", - "type": "decoder" - } - ], - "groups": [ - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "group_id": "b4db12f5b638f1750062dd4220911c4f6f44fc57", - "group_weight": [ - 0, - 26, - 0, - "/ambassador/v0/check_ready", - "GET" - ], - "headers": [], - "kind": "IRHTTPMappingGroup", - "location": "listeneridletimeout.default.1", - "mappings": [ - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "add_request_headers": {}, - "cluster": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8877, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_127_0_0_1_8877_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.1", - "name": "cluster_127_0_0_1_8877_default", - "namespace": "default", - "service": "127.0.0.1:8877", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8877, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8877" - ] - }, - "group_id": "b4db12f5b638f1750062dd4220911c4f6f44fc57", - "headers": [], - "kind": "IRHTTPMapping", - "location": "listeneridletimeout.default.1", - "name": "internal_readiness_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/check_ready", - "resolver": "kubernetes-service", - "rewrite": "/ambassador/v0/check_ready", - "route_weight": [ - 0, - 26, - 0, - "/ambassador/v0/check_ready", - "GET" - ], - "service": "127.0.0.1:8877", - "timeout_ms": 10000, - "weight": 100 - } - ], - "name": "GROUP: internal_readiness_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/check_ready", - "rewrite": "/ambassador/v0/check_ready", - "timeout_ms": 10000 - }, - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "group_id": "7df546235997704c909d473af2cbcb5e606d20de", - "group_weight": [ - 0, - 26, - 0, - "/ambassador/v0/check_alive", - "GET" - ], - "headers": [], - "kind": "IRHTTPMappingGroup", - "location": "listeneridletimeout.default.1", - "mappings": [ - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "add_request_headers": {}, - "cluster": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8877, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_127_0_0_1_8877_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.1", - "name": "cluster_127_0_0_1_8877_default", - "namespace": "default", - "service": "127.0.0.1:8877", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8877, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8877" - ] - }, - "group_id": "7df546235997704c909d473af2cbcb5e606d20de", - "headers": [], - "kind": "IRHTTPMapping", - "location": "listeneridletimeout.default.1", - "name": "internal_liveness_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/check_alive", - "resolver": "kubernetes-service", - "rewrite": "/ambassador/v0/check_alive", - "route_weight": [ - 0, - 26, - 0, - "/ambassador/v0/check_alive", - "GET" - ], - "service": "127.0.0.1:8877", - "timeout_ms": 10000, - "weight": 100 - } - ], - "name": "GROUP: internal_liveness_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/check_alive", - "rewrite": "/ambassador/v0/check_alive", - "timeout_ms": 10000 - }, - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "group_id": "8de18501d2044fe30db225289b318d5fda913b64", - "group_weight": [ - 0, - 15, - 0, - "/ambassador/v0/", - "GET" - ], - "headers": [], - "kind": "IRHTTPMappingGroup", - "location": "listeneridletimeout.default.1", - "mappings": [ - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_rkey": "listeneridletimeout.default.1", - "add_request_headers": {}, - "cluster": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8877, - "_referenced_by": [ - "listeneridletimeout.default.1" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_127_0_0_1_8877_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.1", - "name": "cluster_127_0_0_1_8877_default", - "namespace": "default", - "service": "127.0.0.1:8877", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8877, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8877" - ] - }, - "group_id": "8de18501d2044fe30db225289b318d5fda913b64", - "headers": [], - "kind": "IRHTTPMapping", - "location": "listeneridletimeout.default.1", - "name": "internal_diagnostics_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/", - "resolver": "kubernetes-service", - "rewrite": "/ambassador/v0/", - "route_weight": [ - 0, - 15, - 0, - "/ambassador/v0/", - "GET" - ], - "service": "127.0.0.1:8877", - "timeout_ms": 10000, - "weight": 100 - } - ], - "name": "GROUP: internal_diagnostics_probe_mapping", - "namespace": "default", - "precedence": 0, - "prefix": "/ambassador/v0/", - "rewrite": "/ambassador/v0/", - "timeout_ms": 10000 - }, - { - "_active": true, - "_errored": false, - "_referenced_by": [ - "listeneridletimeout.default.2" - ], - "_rkey": "listeneridletimeout.default.2", - "group_id": "2cc88963a98f4f1bd9ddf846f8fe7bf145757e1c", - "group_weight": [ - 0, - 12, - 0, - "/config_dump", - "GET" - ], - "headers": [], - "kind": "IRHTTPMappingGroup", - "location": "listeneridletimeout.default.2", - "mappings": [ - { - "_active": true, - "_errored": false, - "_rkey": "listeneridletimeout.default.2", - "add_request_headers": {}, - "cluster": { - "_active": true, - "_errored": false, - "_hostname": "127.0.0.1", - "_is_sidecar": false, - "_namespace": "default", - "_port": 8001, - "_referenced_by": [ - "listeneridletimeout.default.2" - ], - "_resolver": "kubernetes-service", - "_rkey": "cluster_http___127_0_0_1_8001_default", - "connect_timeout_ms": 3000, - "enable_endpoints": false, - "enable_ipv4": true, - "enable_ipv6": false, - "ignore_cluster": false, - "kind": "IRCluster", - "lb_type": "round_robin", - "location": "listeneridletimeout.default.2", - "name": "cluster_http___127_0_0_1_8001_default", - "namespace": "default", - "service": "127.0.0.1:8001", - "targets": [ - { - "ip": "127.0.0.1", - "port": 8001, - "target_kind": "IPaddr" - } - ], - "type": "strict_dns", - "urls": [ - "tcp://127.0.0.1:8001" - ] - }, - "group_id": "2cc88963a98f4f1bd9ddf846f8fe7bf145757e1c", - "headers": [], - "kind": "Mapping", - "location": "listeneridletimeout.default.2", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "config__dump", - "namespace": "default", - "precedence": 0, - "prefix": "/config_dump", - "resolver": "kubernetes-service", - "rewrite": "/config_dump", - "route_weight": [ - 0, - 12, - 0, - "/config_dump", - "GET" - ], - "serialization": "ambassador_id: listeneridletimeout\napiVersion: ambassador/v0\nkind: Mapping\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: config__dump\nnamespace: default\nprefix: /config_dump\nrewrite: /config_dump\nservice: http://127.0.0.1:8001\n", - "service": "http://127.0.0.1:8001", - "weight": 100 - } - ], - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "GROUP: config__dump", - "namespace": "default", - "precedence": 0, - "prefix": "/config_dump", - "rewrite": "/config_dump", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: ambassador/v0\nkind: Mapping\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: config__dump\nnamespace: default\nprefix: /config_dump\nrewrite: /config_dump\nservice: http://127.0.0.1:8001\n" - } - ], - "grpc_services": {}, - "hosts": [], - "identity": { - "ambassador_id": "listeneridletimeout", - "ambassador_namespace": "default", - "ambassador_nodename": "listeneridletimeout-default" - }, - "k8s_status_updates": {}, - "listeners": [ - { - "_active": true, - "_errored": false, - "_rkey": "ir.listener", - "hostname": "*", - "insecure_action": "Route", - "kind": "IRListener", - "location": "listeneridletimeout.default.1", - "name": "ir.listener", - "namespace": "default", - "redirect_listener": false, - "secure_action": "Route", - "service_port": 8080, - "use_proxy_proto": false - } - ], - "services": { - "k8s-listeneridletimeout-admin-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-admin-default", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest", - "service": "listeneridletimeout-admin" - }, - "name": "listeneridletimeout-admin", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-admin-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\n service: listeneridletimeout-admin\nname: listeneridletimeout-admin\nnamespace: default\n" - }, - "k8s-listeneridletimeout-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-default", - "metadata_labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n app.kubernetes.io/component: ambassador-service\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: listeneridletimeout\nnamespace: default\n" - }, - "k8s-listeneridletimeout-http-default": { - "_referenced_by": {}, - "ambassador_id": "listeneridletimeout", - "apiVersion": "getambassador.io/v2", - "endpoints": {}, - "kind": "Service", - "location": "k8s-listeneridletimeout-http-default", - "metadata_labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout-http", - "namespace": "default", - "rkey": "k8s-listeneridletimeout-http-default", - "serialization": "ambassador_id: listeneridletimeout\napiVersion: getambassador.io/v2\nendpoints: {}\nkind: Service\nmetadata_labels:\n kat-ambassador-id: listeneridletimeout\n scope: AmbassadorTest\nname: listeneridletimeout-http\nnamespace: default\n" - } - }, - "tls_contexts": [] -} \ No newline at end of file diff --git a/python/tests/gold/listeneridletimeout/snapshots/snapshot.yaml b/python/tests/gold/listeneridletimeout/snapshots/snapshot.yaml deleted file mode 100644 index 3ce87091da..0000000000 --- a/python/tests/gold/listeneridletimeout/snapshots/snapshot.yaml +++ /dev/null @@ -1,154 +0,0 @@ -{ - "Consul": {}, - "Kubernetes": { - "AuthService": null, - "ConsulResolver": null, - "Host": null, - "KubernetesEndpointResolver": null, - "KubernetesServiceResolver": null, - "LogService": null, - "Mapping": null, - "Module": null, - "RateLimitService": null, - "TCPMapping": null, - "TLSContext": null, - "TracingService": null, - "ingresses": null, - "service": [ - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nambassador_id: listeneridletimeout\nconfig:\n listener_idle_timeout_ms: 30000\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: config__dump\nprefix: /config_dump\nrewrite: /config_dump\nservice: http://127.0.0.1:8001\nambassador_id: listeneridletimeout\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nambassador_id: listeneridletimeout\\nconfig:\\n listener_idle_timeout_ms: 30000\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: config__dump\\nprefix: /config_dump\\nrewrite: /config_dump\\nservice: http://127.0.0.1:8001\\nambassador_id: listeneridletimeout\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"listeneridletimeout\",\"scope\":\"AmbassadorTest\"},\"name\":\"listeneridletimeout\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"listeneridletimeout\"},\"type\":\"NodePort\"}}\n" - }, - "creationTimestamp": "2020-01-24T21:53:08Z", - "labels": { - "app.kubernetes.io/component": "ambassador-service", - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout", - "namespace": "default", - "resourceVersion": "1204269", - "selfLink": "/api/v1/namespaces/default/services/listeneridletimeout", - "uid": "3bcc2c34-d681-42dd-abe3-0511c600e2fe" - }, - "spec": { - "clusterIP": "10.245.43.181", - "externalTrafficPolicy": "Cluster", - "ports": [ - { - "name": "http", - "nodePort": 30381, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 30031, - "port": 443, - "protocol": "TCP", - "targetPort": 8443 - } - ], - "selector": { - "service": "listeneridletimeout" - }, - "sessionAffinity": "None", - "type": "NodePort" - }, - "status": { - "loadBalancer": {} - } - }, - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"listeneridletimeout\",\"scope\":\"AmbassadorTest\",\"service\":\"listeneridletimeout-admin\"},\"name\":\"listeneridletimeout-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"listeneridletimeout-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"listeneridletimeout\"},\"type\":\"NodePort\"}}\n" - }, - "creationTimestamp": "2020-01-24T21:53:09Z", - "labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest", - "service": "listeneridletimeout-admin" - }, - "name": "listeneridletimeout-admin", - "namespace": "default", - "resourceVersion": "1203207", - "selfLink": "/api/v1/namespaces/default/services/listeneridletimeout-admin", - "uid": "7150eb4d-108b-4073-bcc4-1b020032e892" - }, - "spec": { - "clusterIP": "10.245.222.74", - "externalTrafficPolicy": "Cluster", - "ports": [ - { - "name": "listeneridletimeout-admin", - "nodePort": 31198, - "port": 8877, - "protocol": "TCP", - "targetPort": 8877 - } - ], - "selector": { - "service": "listeneridletimeout" - }, - "sessionAffinity": "None", - "type": "NodePort" - }, - "status": { - "loadBalancer": {} - } - }, - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"listeneridletimeout\",\"scope\":\"AmbassadorTest\"},\"name\":\"listeneridletimeout-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" - }, - "creationTimestamp": "2020-01-24T21:53:09Z", - "labels": { - "kat-ambassador-id": "listeneridletimeout", - "scope": "AmbassadorTest" - }, - "name": "listeneridletimeout-http", - "namespace": "default", - "resourceVersion": "1203214", - "selfLink": "/api/v1/namespaces/default/services/listeneridletimeout-http", - "uid": "44cec480-daba-4eaf-8f41-22e34287cd1e" - }, - "spec": { - "clusterIP": "10.245.93.215", - "ports": [ - { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "port": 443, - "protocol": "TCP", - "targetPort": 8443 - } - ], - "selector": { - "backend": "superpod-default" - }, - "sessionAffinity": "None", - "type": "ClusterIP" - }, - "status": { - "loadBalancer": {} - } - } - ] - } -} \ No newline at end of file diff --git a/python/tests/gold/logservicetest/bootstrap-ads.json b/python/tests/gold/logservicetest/bootstrap-ads.json index eaf35b40e4..a451f45ed0 100644 --- a/python/tests/gold/logservicetest/bootstrap-ads.json +++ b/python/tests/gold/logservicetest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "logservicetest-default", "id": "test-id" diff --git a/python/tests/gold/logservicetest/snapshots/econf.json b/python/tests/gold/logservicetest/snapshots/econf.json index b36a3f38f5..712724ca32 100644 --- a/python/tests/gold/logservicetest/snapshots/econf.json +++ b/python/tests/gold/logservicetest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -97,7 +110,9 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { "config": { @@ -127,11 +142,12 @@ "name": "envoy.http_grpc_access_log" }, { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -338,15 +354,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/logservicetest/snapshots/snapshot.yaml b/python/tests/gold/logservicetest/snapshots/snapshot.yaml index 129128848d..7a2ff4053e 100644 --- a/python/tests/gold/logservicetest/snapshots/snapshot.yaml +++ b/python/tests/gold/logservicetest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: LogService\nname: custom-http-logging\nservice: stenography:25565\ndriver: http\ndriver_config:\n additional_log_headers:\n - header_name: \"included-on-all\"\n - header_name: \"not-included-on-trailer\"\n during_trailer: false\n - header_name: \"not-included on resp-trail\"\n during_trailer: false\n during_response: false\n - header_name: \"not-anywhere\"\n during_trailer: false\n during_response: false\n during_request: false\nflush_interval_time: 1\nflush_interval_byte_size: 1\nambassador_id: logservicetest\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: config__dump\nprefix: /config_dump\nrewrite: /config_dump\nservice: http://127.0.0.1:8001\nambassador_id: logservicetest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: LogService\\nname: custom-http-logging\\nservice: stenography:25565\\ndriver: http\\ndriver_config:\\n additional_log_headers:\\n - header_name: \\\"included-on-all\\\"\\n - header_name: \\\"not-included-on-trailer\\\"\\n during_trailer: false\\n - header_name: \\\"not-included on resp-trail\\\"\\n during_trailer: false\\n during_response: false\\n - header_name: \\\"not-anywhere\\\"\\n during_trailer: false\\n during_response: false\\n during_request: false\\nflush_interval_time: 1\\nflush_interval_byte_size: 1\\nambassador_id: logservicetest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: config__dump\\nprefix: /config_dump\\nrewrite: /config_dump\\nservice: http://127.0.0.1:8001\\nambassador_id: logservicetest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"logservicetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"logservicetest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443},{\"name\":\"extra-25565\",\"port\":25565,\"protocol\":\"TCP\",\"targetPort\":25565}],\"selector\":{\"service\":\"logservicetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:47Z", + "creationTimestamp": "2020-02-19T23:20:10Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "logservicetest", @@ -31,31 +31,31 @@ }, "name": "logservicetest", "namespace": "default", - "resourceVersion": "36819", + "resourceVersion": "55947", "selfLink": "/api/v1/namespaces/default/services/logservicetest", - "uid": "125b904d-4794-11ea-829a-062d8f98984d" + "uid": "5fd5f1bf-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.24.71", + "clusterIP": "10.107.80.160", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31302, + "nodePort": 30536, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31965, + "nodePort": 30380, "port": 443, "protocol": "TCP", "targetPort": 8443 }, { "name": "extra-25565", - "nodePort": 30606, + "nodePort": 31241, "port": 25565, "protocol": "TCP", "targetPort": 25565 @@ -78,7 +78,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"logservicetest\",\"scope\":\"AmbassadorTest\",\"service\":\"logservicetest-admin\"},\"name\":\"logservicetest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"logservicetest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"logservicetest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:47Z", + "creationTimestamp": "2020-02-19T23:20:10Z", "labels": { "kat-ambassador-id": "logservicetest", "scope": "AmbassadorTest", @@ -86,17 +86,17 @@ }, "name": "logservicetest-admin", "namespace": "default", - "resourceVersion": "36823", + "resourceVersion": "55953", "selfLink": "/api/v1/namespaces/default/services/logservicetest-admin", - "uid": "12660454-4794-11ea-829a-062d8f98984d" + "uid": "5fe33488-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.43.155", + "clusterIP": "10.98.65.175", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "logservicetest-admin", - "nodePort": 30780, + "nodePort": 30826, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -117,33 +117,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"logservicetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"logservicetest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8108},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8471}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"logservicetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"logservicetest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8109},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8472}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:47Z", + "creationTimestamp": "2020-02-19T23:20:11Z", "labels": { "kat-ambassador-id": "logservicetest", "scope": "AmbassadorTest" }, "name": "logservicetest-http", "namespace": "default", - "resourceVersion": "36847", + "resourceVersion": "55976", "selfLink": "/api/v1/namespaces/default/services/logservicetest-http", - "uid": "1287a442-4794-11ea-829a-062d8f98984d" + "uid": "6004574b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.97.239", + "clusterIP": "10.101.40.156", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8108 + "targetPort": 8109 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8471 + "targetPort": 8472 } ], "selector": { @@ -163,24 +163,24 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"logservicetest\",\"scope\":\"AmbassadorTest\"},\"name\":\"stenography\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":25565,\"targetPort\":\"http\"}],\"selector\":{\"app\":\"stenography\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:47Z", + "creationTimestamp": "2020-02-19T23:20:10Z", "labels": { "kat-ambassador-id": "logservicetest", "scope": "AmbassadorTest" }, "name": "stenography", "namespace": "default", - "resourceVersion": "36830", + "resourceVersion": "55960", "selfLink": "/api/v1/namespaces/default/services/stenography", - "uid": "1274f8d5-4794-11ea-829a-062d8f98984d" + "uid": "5ff29381-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.62.40", + "clusterIP": "10.104.224.112", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32188, + "nodePort": 30131, "port": 25565, "protocol": "TCP", "targetPort": "http" diff --git a/python/tests/gold/plain/bootstrap-ads.json b/python/tests/gold/plain/bootstrap-ads.json index 65e6cf33b4..c7b660b8b4 100644 --- a/python/tests/gold/plain/bootstrap-ads.json +++ b/python/tests/gold/plain/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "plain-plain-namespace", "id": "test-id" diff --git a/python/tests/gold/plain/snapshots/aconf.json b/python/tests/gold/plain/snapshots/aconf.json index 5ed2e19206..59128cb3c9 100644 --- a/python/tests/gold/plain/snapshots/aconf.json +++ b/python/tests/gold/plain/snapshots/aconf.json @@ -5,25 +5,25 @@ "error": "Ambassador could not find core CRD definitions. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "plain", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find Resolver type CRD definitions. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "plain", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find the Host CRD definition. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "plain", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" }, { "error": "Ambassador could not find the LogService CRD definition. Please visit https://www.getambassador.io/reference/core/crds/ for more information. You can continue using Ambassador via Kubernetes annotations, any configuration via CRDs will be ignored...", "hostname": "plain", "ok": false, - "version": "1.1.0-128-gbe7342a38-dirty" + "version": "1.1.1-161-g310bb7bf0" } ] }, diff --git a/python/tests/gold/plain/snapshots/econf.json b/python/tests/gold/plain/snapshots/econf.json index a2178b5235..8e950c84e3 100644 --- a/python/tests/gold/plain/snapshots/econf.json +++ b/python/tests/gold/plain/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -2321,8 +2334,12 @@ ] }, "name": "cluster_https___plain_tlsorigination_grp-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" }, @@ -2351,8 +2368,12 @@ ] }, "name": "cluster_https___plain_tlsorigination_htt-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" }, @@ -2543,8 +2564,12 @@ ] }, "name": "cluster_plain_tlsorigination_grpc_explic-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" }, @@ -2573,8 +2598,12 @@ ] }, "name": "cluster_plain_tlsorigination_http_explic-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" } @@ -2593,14 +2622,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -3881,7 +3913,9 @@ "runtime_key": "routing.traffic_shift.cluster_http___plain_simplemapping_http_-15" } }, - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "cluster": "cluster_http___plain_simplemapping_http_-15", "prefix_rewrite": "/", @@ -3901,7 +3935,9 @@ "runtime_key": "routing.traffic_shift.cluster_http___plain_simplemapping_http_-15" } }, - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "cluster": "cluster_http___plain_simplemapping_http_-15", "prefix_rewrite": "/", @@ -3927,7 +3963,9 @@ "runtime_key": "routing.traffic_shift.cluster_http___plain_simplemapping_grpc_-15" } }, - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "cluster": "cluster_http___plain_simplemapping_grpc_-15", "prefix_rewrite": "/", @@ -3947,7 +3985,9 @@ "runtime_key": "routing.traffic_shift.cluster_http___plain_simplemapping_grpc_-15" } }, - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "cluster": "cluster_http___plain_simplemapping_grpc_-15", "prefix_rewrite": "/", @@ -6312,8 +6352,10 @@ "route": { "cluster": "cluster_http___plain_simplemapping_http_-13", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6343,8 +6385,10 @@ "route": { "cluster": "cluster_http___plain_simplemapping_http_-13", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6380,8 +6424,10 @@ "route": { "cluster": "cluster_http___plain_simplemapping_grpc_-13", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6411,8 +6457,10 @@ "route": { "cluster": "cluster_http___plain_simplemapping_grpc_-13", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6767,13 +6815,17 @@ } } ], - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "auto_host_rewrite": true, "cluster": "cluster_http___plain_simplemapping_http_-10", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6818,13 +6870,17 @@ } } ], - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "auto_host_rewrite": true, "cluster": "cluster_http___plain_simplemapping_http_-10", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6875,13 +6931,17 @@ } } ], - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "auto_host_rewrite": true, "cluster": "cluster_http___plain_simplemapping_grpc_-10", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -6926,13 +6986,17 @@ } } ], - "response_headers_to_remove": "x-envoy-upstream-service-time", + "response_headers_to_remove": [ + "x-envoy-upstream-service-time" + ], "route": { "auto_host_rewrite": true, "cluster": "cluster_http___plain_simplemapping_grpc_-10", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -8048,15 +8112,15 @@ ], "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/plain/snapshots/ir.json b/python/tests/gold/plain/snapshots/ir.json index d07b3ba759..30121d70ed 100644 --- a/python/tests/gold/plain/snapshots/ir.json +++ b/python/tests/gold/plain/snapshots/ir.json @@ -10234,8 +10234,10 @@ ], "_rkey": "plain-simplemapping-http-cors-http.plain-namespace.1", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -10298,8 +10300,10 @@ ] }, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -10354,8 +10358,10 @@ ], "_rkey": "plain-simplemapping-grpc-cors-grpc.plain-namespace.1", "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -10418,8 +10424,10 @@ ] }, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -11102,8 +11110,10 @@ "auto_host_rewrite": true, "case_sensitive": false, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -11173,8 +11183,10 @@ ] }, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -11241,8 +11253,10 @@ "auto_host_rewrite": true, "case_sensitive": false, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { @@ -11312,8 +11326,10 @@ ] }, "cors": { - "allow_origin": [ - "*" + "allow_origin_string_match": [ + { + "exact": "*" + } ], "filter_enabled": { "default_value": { diff --git a/python/tests/gold/plain/snapshots/snapshot.yaml b/python/tests/gold/plain/snapshots/snapshot.yaml index bb93665b4f..147a38d3dc 100644 --- a/python/tests/gold/plain/snapshots/snapshot.yaml +++ b/python/tests/gold/plain/snapshots/snapshot.yaml @@ -8,33 +8,32 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostheadermappingingress-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"host\":\"inspector.external\",\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-hostheadermappingingress-grpc-grpc\",\"servicePort\":80},\"path\":\"/HostHeaderMappingIngress-GRPC/\"}]}}]}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simplemappingingress-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simplemappingingress-grpc-grpc\",\"servicePort\":80},\"path\":\"/SimpleMappingIngress-GRPC/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "hostheadermappingingress-grpc", + "name": "simplemappingingress-grpc", "namespace": "plain-namespace", - "resourceVersion": "37170", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/hostheadermappingingress-grpc", - "uid": "169cbb80-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56273", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simplemappingingress-grpc", + "uid": "6390f182-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ { - "host": "inspector.external", "http": { "paths": [ { "backend": { - "serviceName": "plain-hostheadermappingingress-grpc-grpc", + "serviceName": "plain-simplemappingingress-grpc-grpc", "servicePort": 80 }, - "path": "/HostHeaderMappingIngress-GRPC/" + "path": "/SimpleMappingIngress-GRPC/" } ] } @@ -51,33 +50,32 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostheadermappingingress-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"host\":\"inspector.external\",\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-hostheadermappingingress-http-http\",\"servicePort\":80},\"path\":\"/HostHeaderMappingIngress-HTTP/\"}]}}]}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simplemappingingress-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simplemappingingress-http-http\",\"servicePort\":80},\"path\":\"/SimpleMappingIngress-HTTP/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "hostheadermappingingress-http", + "name": "simplemappingingress-http", "namespace": "plain-namespace", - "resourceVersion": "37164", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/hostheadermappingingress-http", - "uid": "16864b44-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56269", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simplemappingingress-http", + "uid": "637f2cef-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ { - "host": "inspector.external", "http": { "paths": [ { "backend": { - "serviceName": "plain-hostheadermappingingress-http-http", + "serviceName": "plain-simplemappingingress-http-http", "servicePort": 80 }, - "path": "/HostHeaderMappingIngress-HTTP/" + "path": "/SimpleMappingIngress-HTTP/" } ] } @@ -94,33 +92,33 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleIngressWithAnnotations-GRPC-nested\nprefix: /SimpleIngressWithAnnotations-GRPC-nested/\nservice: http://plain-simpleingresswithannotations-grpc-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleIngressWithAnnotations-GRPC-nested\\nprefix: /SimpleIngressWithAnnotations-GRPC-nested/\\nservice: http://plain-simpleingresswithannotations-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simpleingresswithannotations-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simpleingresswithannotations-grpc-grpc\",\"servicePort\":80},\"path\":\"/SimpleIngressWithAnnotations-GRPC/\"}]}}]}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostheadermappingingress-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"host\":\"inspector.external\",\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-hostheadermappingingress-grpc-grpc\",\"servicePort\":80},\"path\":\"/HostHeaderMappingIngress-GRPC/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "simpleingresswithannotations-grpc", + "name": "hostheadermappingingress-grpc", "namespace": "plain-namespace", - "resourceVersion": "37159", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simpleingresswithannotations-grpc", - "uid": "16734446-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56295", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/hostheadermappingingress-grpc", + "uid": "63dd66e8-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ { + "host": "inspector.external", "http": { "paths": [ { "backend": { - "serviceName": "plain-simpleingresswithannotations-grpc-grpc", + "serviceName": "plain-hostheadermappingingress-grpc-grpc", "servicePort": 80 }, - "path": "/SimpleIngressWithAnnotations-GRPC/" + "path": "/HostHeaderMappingIngress-GRPC/" } ] } @@ -137,33 +135,33 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleIngressWithAnnotations-HTTP-nested\nprefix: /SimpleIngressWithAnnotations-HTTP-nested/\nservice: http://plain-simpleingresswithannotations-http-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleIngressWithAnnotations-HTTP-nested\\nprefix: /SimpleIngressWithAnnotations-HTTP-nested/\\nservice: http://plain-simpleingresswithannotations-http-http.plain-namespace\\nambassador_id: plain\\n\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simpleingresswithannotations-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simpleingresswithannotations-http-http\",\"servicePort\":80},\"path\":\"/SimpleIngressWithAnnotations-HTTP/\"}]}}]}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"hostheadermappingingress-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"host\":\"inspector.external\",\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-hostheadermappingingress-http-http\",\"servicePort\":80},\"path\":\"/HostHeaderMappingIngress-HTTP/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "simpleingresswithannotations-http", + "name": "hostheadermappingingress-http", "namespace": "plain-namespace", - "resourceVersion": "37154", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simpleingresswithannotations-http", - "uid": "165fae29-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56289", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/hostheadermappingingress-http", + "uid": "63ca0e8d-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ { + "host": "inspector.external", "http": { "paths": [ { "backend": { - "serviceName": "plain-simpleingresswithannotations-http-http", + "serviceName": "plain-hostheadermappingingress-http-http", "servicePort": 80 }, - "path": "/SimpleIngressWithAnnotations-HTTP/" + "path": "/HostHeaderMappingIngress-HTTP/" } ] } @@ -180,20 +178,21 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simplemappingingress-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simplemappingingress-grpc-grpc\",\"servicePort\":80},\"path\":\"/SimpleMappingIngress-GRPC/\"}]}}]}}\n", + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleIngressWithAnnotations-GRPC-nested\nprefix: /SimpleIngressWithAnnotations-GRPC-nested/\nservice: http://plain-simpleingresswithannotations-grpc-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleIngressWithAnnotations-GRPC-nested\\nprefix: /SimpleIngressWithAnnotations-GRPC-nested/\\nservice: http://plain-simpleingresswithannotations-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simpleingresswithannotations-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simpleingresswithannotations-grpc-grpc\",\"servicePort\":80},\"path\":\"/SimpleIngressWithAnnotations-GRPC/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "simplemappingingress-grpc", + "name": "simpleingresswithannotations-grpc", "namespace": "plain-namespace", - "resourceVersion": "37149", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simplemappingingress-grpc", - "uid": "164bb7a9-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56285", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simpleingresswithannotations-grpc", + "uid": "63b5a7c4-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ @@ -202,10 +201,10 @@ "paths": [ { "backend": { - "serviceName": "plain-simplemappingingress-grpc-grpc", + "serviceName": "plain-simpleingresswithannotations-grpc-grpc", "servicePort": 80 }, - "path": "/SimpleMappingIngress-GRPC/" + "path": "/SimpleIngressWithAnnotations-GRPC/" } ] } @@ -222,20 +221,21 @@ "metadata": { "annotations": { "getambassador.io/ambassador-id": "plain", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simplemappingingress-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simplemappingingress-http-http\",\"servicePort\":80},\"path\":\"/SimpleMappingIngress-HTTP/\"}]}}]}}\n", + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleIngressWithAnnotations-HTTP-nested\nprefix: /SimpleIngressWithAnnotations-HTTP-nested/\nservice: http://plain-simpleingresswithannotations-http-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"extensions/v1beta1\",\"kind\":\"Ingress\",\"metadata\":{\"annotations\":{\"getambassador.io/ambassador-id\":\"plain\",\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleIngressWithAnnotations-HTTP-nested\\nprefix: /SimpleIngressWithAnnotations-HTTP-nested/\\nservice: http://plain-simpleingresswithannotations-http-http.plain-namespace\\nambassador_id: plain\\n\",\"kubernetes.io/ingress.class\":\"ambassador\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"simpleingresswithannotations-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"rules\":[{\"http\":{\"paths\":[{\"backend\":{\"serviceName\":\"plain-simpleingresswithannotations-http-http\",\"servicePort\":80},\"path\":\"/SimpleIngressWithAnnotations-HTTP/\"}]}}]}}\n", "kubernetes.io/ingress.class": "ambassador" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "generation": 1, "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "simplemappingingress-http", + "name": "simpleingresswithannotations-http", "namespace": "plain-namespace", - "resourceVersion": "37144", - "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simplemappingingress-http", - "uid": "1636248c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56279", + "selfLink": "/apis/extensions/v1beta1/namespaces/plain-namespace/ingresses/simpleingresswithannotations-http", + "uid": "63a38602-536e-11ea-85dd-167682b5c255" }, "spec": { "rules": [ @@ -244,10 +244,10 @@ "paths": [ { "backend": { - "serviceName": "plain-simplemappingingress-http-http", + "serviceName": "plain-simpleingresswithannotations-http-http", "servicePort": 80 }, - "path": "/SimpleMappingIngress-HTTP/" + "path": "/SimpleIngressWithAnnotations-HTTP/" } ] } @@ -265,34 +265,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-10-canary\nprefix: /CanaryDiffMapping-HTTP-10/\nservice: http://plain-canarydiffmapping-http-10-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 10\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-10-canary\\nprefix: /CanaryDiffMapping-HTTP-10/\\nservice: http://plain-canarydiffmapping-http-10-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-10-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8158},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8521}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-50\nprefix: /CanaryDiffMapping-GRPC-50/\nservice: http://plain-canarydiffmapping-grpc-50-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-50\\nprefix: /CanaryDiffMapping-GRPC-50/\\nservice: http://plain-canarydiffmapping-grpc-50-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-50-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8167},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8530}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-10-http-canary", + "name": "plain-canarydiffmapping-grpc-50-grpc", "namespace": "plain-namespace", - "resourceVersion": "37294", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-10-http-canary", - "uid": "18c1ab00-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56448", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-50-grpc", + "uid": "6665e947-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.58.94", + "clusterIP": "10.108.152.228", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8158 + "targetPort": 8167 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8521 + "targetPort": 8530 } ], "selector": { @@ -310,34 +310,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-100-canary\nprefix: /CanaryMapping-HTTP-100/\nservice: http://plain-canarymapping-http-100-http-canary.plain-namespace\nweight: 100\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-100-canary\\nprefix: /CanaryMapping-HTTP-100/\\nservice: http://plain-canarymapping-http-100-http-canary.plain-namespace\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-100-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8146},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8509}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-GRPC-target1\nprefix: /HeaderRoutingTest-GRPC/\nservice: http://plain-headerroutingtest-grpc-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-GRPC-target1\\nprefix: /HeaderRoutingTest-GRPC/\\nservice: http://plain-headerroutingtest-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8082},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8445}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-100-http-canary", + "name": "plain-headerroutingtest-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37242", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-100-http-canary", - "uid": "178d1c65-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56112", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-grpc-grpc", + "uid": "618851bf-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.245.99", + "clusterIP": "10.99.110.187", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8146 + "targetPort": 8082 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8509 + "targetPort": 8445 } ], "selector": { @@ -355,34 +355,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-CORS\nprefix: /SimpleMapping-GRPC-CORS/\nservice: http://plain-simplemapping-grpc-cors-grpc.plain-namespace\nambassador_id: plain\ncors: {origins: \"*\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-CORS\\nprefix: /SimpleMapping-GRPC-CORS/\\nservice: http://plain-simplemapping-grpc-cors-grpc.plain-namespace\\nambassador_id: plain\\ncors: {origins: \\\"*\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-cors-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8115},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8478}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-all\nprefix: /SimpleMapping-GRPC-all/\nservice: http://plain-simplemapping-grpc-all-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\nadd_response_headers: {\"foo\": \"bar\"}\nuse_websocket: true\ncors: {origins: \"*\"}\ncase_sensitive: false\nauto_host_rewrite: true\nrewrite: /foo\nremove_response_headers: x-envoy-upstream-service-time\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-all\\nprefix: /SimpleMapping-GRPC-all/\\nservice: http://plain-simplemapping-grpc-all-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\nuse_websocket: true\\ncors: {origins: \\\"*\\\"}\\ncase_sensitive: false\\nauto_host_rewrite: true\\nrewrite: /foo\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-all-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8121},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8484}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-cors-grpc", + "name": "plain-simplemapping-grpc-all-grpc", "namespace": "plain-namespace", - "resourceVersion": "37119", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-cors-grpc", - "uid": "15db176a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56267", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-all-grpc", + "uid": "63767285-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.201.127", + "clusterIP": "10.111.59.223", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8115 + "targetPort": 8121 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8478 + "targetPort": 8484 } ], "selector": { @@ -400,34 +400,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddReqHeadersMapping-HTTP\nprefix: /AddReqHeadersMapping-HTTP/\nservice: http://plain-addreqheadersmapping-http-http.plain-namespace\nadd_request_headers:\n zoo:\n append: False\n value: Zoo\n aoo:\n append: True\n value: aoo\n boo:\n value: boo\n foo: Foo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddReqHeadersMapping-HTTP\\nprefix: /AddReqHeadersMapping-HTTP/\\nservice: http://plain-addreqheadersmapping-http-http.plain-namespace\\nadd_request_headers:\\n zoo:\\n append: False\\n value: Zoo\\n aoo:\\n append: True\\n value: aoo\\n boo:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addreqheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8175},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8538}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-foo-bar\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-foo-bar/\nservice: http://plain-simplemapping-http-addrequestheaders-foo-bar-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-foo-bar\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-foo-bar/\\nservice: http://plain-simplemapping-http-addrequestheaders-foo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-foo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8085},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8448}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-addreqheadersmapping-http-http", + "name": "plain-simplemapping-http-addrequestheaders-foo-bar-http", "namespace": "plain-namespace", - "resourceVersion": "37362", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addreqheadersmapping-http-http", - "uid": "1a0343e7-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56125", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-foo-bar-http", + "uid": "61afb56d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.183.98", + "clusterIP": "10.109.127.234", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8175 + "targetPort": 8085 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8538 + "targetPort": 8448 } ], "selector": { @@ -445,34 +445,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AutoHostRewrite\nprefix: /SimpleMapping-GRPC-AutoHostRewrite/\nservice: http://plain-simplemapping-grpc-autohostrewrite-grpc.plain-namespace\nambassador_id: plain\nauto_host_rewrite: true\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AutoHostRewrite\\nprefix: /SimpleMapping-GRPC-AutoHostRewrite/\\nservice: http://plain-simplemapping-grpc-autohostrewrite-grpc.plain-namespace\\nambassador_id: plain\\nauto_host_rewrite: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-autohostrewrite-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8117},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8480}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu/\nservice: http://plain-simplemapping-http-addresponseheaders-aoo-tyu-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-http-addresponseheaders-aoo-tyu-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-aoo-tyu-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8094},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8457}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-autohostrewrite-grpc", + "name": "plain-simplemapping-http-addresponseheaders-aoo-tyu-http", "namespace": "plain-namespace", - "resourceVersion": "37126", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-autohostrewrite-grpc", - "uid": "15f14c84-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56158", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-aoo-tyu-http", + "uid": "6220c216-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.78.36", + "clusterIP": "10.105.105.253", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8117 + "targetPort": 8094 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8480 + "targetPort": 8457 } ], "selector": { @@ -493,19 +493,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AutoHostRewrite\nprefix: /SimpleMapping-HTTP-AutoHostRewrite/\nservice: http://plain-simplemapping-http-autohostrewrite-http.plain-namespace\nambassador_id: plain\nauto_host_rewrite: true\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AutoHostRewrite\\nprefix: /SimpleMapping-HTTP-AutoHostRewrite/\\nservice: http://plain-simplemapping-http-autohostrewrite-http.plain-namespace\\nambassador_id: plain\\nauto_host_rewrite: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-autohostrewrite-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8098},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8461}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, "name": "plain-simplemapping-http-autohostrewrite-http", "namespace": "plain-namespace", - "resourceVersion": "37049", + "resourceVersion": "56175", "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-autohostrewrite-http", - "uid": "150632d2-4794-11ea-829a-062d8f98984d" + "uid": "625f2649-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.216.174", + "clusterIP": "10.109.225.20", "ports": [ { "name": "http", @@ -535,34 +535,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-50\nprefix: /CanaryMapping-HTTP-50/\nservice: http://plain-canarymapping-http-50-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-50\\nprefix: /CanaryMapping-HTTP-50/\\nservice: http://plain-canarymapping-http-50-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-50-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8143},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8506}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: RemoveReqHeadersMapping-HTTP\nprefix: /RemoveReqHeadersMapping-HTTP/\nservice: http://httpbin.org\nremove_request_headers:\n- zoo\n- aoo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: RemoveReqHeadersMapping-HTTP\\nprefix: /RemoveReqHeadersMapping-HTTP/\\nservice: http://httpbin.org\\nremove_request_headers:\\n- zoo\\n- aoo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-removereqheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8173},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8536}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-50-http", + "name": "plain-removereqheadersmapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37231", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-50-http", - "uid": "176ce6f2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56471", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-removereqheadersmapping-http-http", + "uid": "66dd44c3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.170.30", + "clusterIP": "10.96.2.65", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8143 + "targetPort": 8173 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8506 + "targetPort": 8536 } ], "selector": { @@ -580,34 +580,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-all\nprefix: /SimpleMapping-HTTP-all/\nservice: http://plain-simplemapping-http-all-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\nadd_response_headers: {\"foo\": \"bar\"}\nuse_websocket: true\ncors: {origins: \"*\"}\ncase_sensitive: false\nauto_host_rewrite: true\nrewrite: /foo\nremove_response_headers: x-envoy-upstream-service-time\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-all\\nprefix: /SimpleMapping-HTTP-all/\\nservice: http://plain-simplemapping-http-all-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\nuse_websocket: true\\ncors: {origins: \\\"*\\\"}\\ncase_sensitive: false\\nauto_host_rewrite: true\\nrewrite: /foo\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-all-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8102},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8465}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddReqHeadersMapping-HTTP\nprefix: /AddReqHeadersMapping-HTTP/\nservice: http://plain-addreqheadersmapping-http-http.plain-namespace\nadd_request_headers:\n zoo:\n append: False\n value: Zoo\n aoo:\n append: True\n value: aoo\n boo:\n value: boo\n foo: Foo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddReqHeadersMapping-HTTP\\nprefix: /AddReqHeadersMapping-HTTP/\\nservice: http://plain-addreqheadersmapping-http-http.plain-namespace\\nadd_request_headers:\\n zoo:\\n append: False\\n value: Zoo\\n aoo:\\n append: True\\n value: aoo\\n boo:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addreqheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8175},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8538}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-all-http", + "name": "plain-addreqheadersmapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37067", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-all-http", - "uid": "153e0c0f-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56478", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addreqheadersmapping-http-http", + "uid": "6700a8a8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.63.217", + "clusterIP": "10.99.29.227", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8102 + "targetPort": 8175 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8465 + "targetPort": 8538 } ], "selector": { @@ -625,34 +625,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-CaseSensitive\nprefix: /SimpleMapping-HTTP-CaseSensitive/\nservice: http://plain-simplemapping-http-casesensitive-http.plain-namespace\nambassador_id: plain\ncase_sensitive: false\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-CaseSensitive\\nprefix: /SimpleMapping-HTTP-CaseSensitive/\\nservice: http://plain-simplemapping-http-casesensitive-http.plain-namespace\\nambassador_id: plain\\ncase_sensitive: false\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-casesensitive-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8097},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8460}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-100-canary\nprefix: /CanaryDiffMapping-GRPC-100/\nservice: http://plain-canarydiffmapping-grpc-100-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 100\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-100-canary\\nprefix: /CanaryDiffMapping-GRPC-100/\\nservice: http://plain-canarydiffmapping-grpc-100-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-100-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8170},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8533}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-casesensitive-http", + "name": "plain-canarydiffmapping-grpc-100-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "37045", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-casesensitive-http", - "uid": "14fa6064-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56459", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-100-grpc-canary", + "uid": "66a3f806-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.165.163", + "clusterIP": "10.98.132.62", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8097 + "targetPort": 8170 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8460 + "targetPort": 8533 } ], "selector": { @@ -670,34 +670,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-GRPC-target1\nprefix: /HeaderRoutingTest-GRPC/\nservice: http://plain-headerroutingtest-grpc-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-GRPC-target1\\nprefix: /HeaderRoutingTest-GRPC/\\nservice: http://plain-headerroutingtest-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8082},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8445}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-50-canary\nprefix: /CanaryMapping-GRPC-50/\nservice: http://plain-canarymapping-grpc-50-grpc-canary.plain-namespace\nweight: 50\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-50-canary\\nprefix: /CanaryMapping-GRPC-50/\\nservice: http://plain-canarymapping-grpc-50-grpc-canary.plain-namespace\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-50-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8152},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8515}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-headerroutingtest-grpc-grpc", + "name": "plain-canarymapping-grpc-50-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "36985", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-grpc-grpc", - "uid": "141fda91-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56393", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-50-grpc-canary", + "uid": "6564e030-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.110.168", + "clusterIP": "10.103.16.1", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8082 + "targetPort": 8152 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8445 + "targetPort": 8515 } ], "selector": { @@ -718,19 +718,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-100\nprefix: /CanaryMapping-HTTP-100/\nservice: http://plain-canarymapping-http-100-http.plain-namespace\nambassador_id: plain\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-100\\nprefix: /CanaryMapping-HTTP-100/\\nservice: http://plain-canarymapping-http-100-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-100-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8145},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8508}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, "name": "plain-canarymapping-http-100-http", "namespace": "plain-namespace", - "resourceVersion": "37238", + "resourceVersion": "56367", "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-100-http", - "uid": "1780fa63-4794-11ea-829a-062d8f98984d" + "uid": "64ef66b3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.164.195", + "clusterIP": "10.98.118.67", "ports": [ { "name": "http", @@ -760,34 +760,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: HostHeaderMapping-HTTP\nprefix: /HostHeaderMapping-HTTP/\nservice: http://plain-hostheadermapping-http-http.plain-namespace\nhost: inspector.external\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: HostHeaderMapping-HTTP\\nprefix: /HostHeaderMapping-HTTP/\\nservice: http://plain-hostheadermapping-http-http.plain-namespace\\nhost: inspector.external\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8128},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8491}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-HTTP-target1\nprefix: /HeaderRoutingTest-HTTP/\nservice: http://plain-headerroutingtest-http-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-HTTP-target1\\nprefix: /HeaderRoutingTest-HTTP/\\nservice: http://plain-headerroutingtest-http-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-hostheadermapping-http-http", + "name": "plain-headerroutingtest-http-http", "namespace": "plain-namespace", - "resourceVersion": "37176", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermapping-http-http", - "uid": "16b2db85-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56105", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-http-http", + "uid": "617167b8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.196.188", + "clusterIP": "10.105.205.4", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8128 + "targetPort": 8080 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8491 + "targetPort": 8443 } ], "selector": { @@ -805,34 +805,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-Rewrite-SLASH-foo\nprefix: /SimpleMapping-GRPC-Rewrite-SLASH-foo/\nservice: http://plain-simplemapping-grpc-rewrite-slash-foo-grpc.plain-namespace\nambassador_id: plain\nrewrite: /foo\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-Rewrite-SLASH-foo\\nprefix: /SimpleMapping-GRPC-Rewrite-SLASH-foo/\\nservice: http://plain-simplemapping-grpc-rewrite-slash-foo-grpc.plain-namespace\\nambassador_id: plain\\nrewrite: /foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-rewrite-slash-foo-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8118},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8481}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-HTTP-target2\nprefix: /HeaderRoutingTest-HTTP/\nservice: http://plain-headerroutingtest-http-http-target2.plain-namespace\nheaders:\n X-Route: target2\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-HTTP-target2\\nprefix: /HeaderRoutingTest-HTTP/\\nservice: http://plain-headerroutingtest-http-http-target2.plain-namespace\\nheaders:\\n X-Route: target2\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-http-http-target2\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-rewrite-slash-foo-grpc", + "name": "plain-headerroutingtest-http-http-target2", "namespace": "plain-namespace", - "resourceVersion": "37130", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-rewrite-slash-foo-grpc", - "uid": "160bc27b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56109", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-http-http-target2", + "uid": "617df2f7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.87.142", + "clusterIP": "10.109.6.11", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8118 + "targetPort": 8081 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8481 + "targetPort": 8444 } ], "selector": { @@ -850,34 +850,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-UseWebsocket\nprefix: /SimpleMapping-HTTP-UseWebsocket/\nservice: http://plain-simplemapping-http-usewebsocket-http.plain-namespace\nambassador_id: plain\nuse_websocket: true\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-UseWebsocket\\nprefix: /SimpleMapping-HTTP-UseWebsocket/\\nservice: http://plain-simplemapping-http-usewebsocket-http.plain-namespace\\nambassador_id: plain\\nuse_websocket: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-usewebsocket-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8095},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8458}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: HostHeaderMapping-GRPC\nprefix: /HostHeaderMapping-GRPC/\nservice: http://plain-hostheadermapping-grpc-grpc.plain-namespace\nhost: inspector.external\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: HostHeaderMapping-GRPC\\nprefix: /HostHeaderMapping-GRPC/\\nservice: http://plain-hostheadermapping-grpc-grpc.plain-namespace\\nhost: inspector.external\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8129},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8492}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-usewebsocket-http", + "name": "plain-hostheadermapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37036", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-usewebsocket-http", - "uid": "14d51173-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56305", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermapping-grpc-grpc", + "uid": "641582ed-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.174.225", + "clusterIP": "10.99.202.126", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8095 + "targetPort": 8129 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8458 + "targetPort": 8492 } ], "selector": { @@ -895,34 +895,33 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-0\nprefix: /CanaryDiffMapping-GRPC-0/\nservice: http://plain-canarydiffmapping-grpc-0-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-0\\nprefix: /CanaryDiffMapping-GRPC-0/\\nservice: http://plain-canarydiffmapping-grpc-0-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-0-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8163},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8526}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simpleingresswithannotations-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8124},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8487}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-0-grpc", + "name": "plain-simpleingresswithannotations-http-http", "namespace": "plain-namespace", - "resourceVersion": "37315", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-0-grpc", - "uid": "1922d941-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56281", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simpleingresswithannotations-http-http", + "uid": "63acb522-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.14.119", + "clusterIP": "10.101.29.195", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8163 + "targetPort": 8124 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8526 + "targetPort": 8487 } ], "selector": { @@ -940,34 +939,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-50-canary\nprefix: /CanaryMapping-GRPC-50/\nservice: http://plain-canarymapping-grpc-50-grpc-canary.plain-namespace\nweight: 50\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-50-canary\\nprefix: /CanaryMapping-GRPC-50/\\nservice: http://plain-canarymapping-grpc-50-grpc-canary.plain-namespace\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-50-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8152},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8515}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe/\nservice: http://plain-simplemapping-http-addresponseheaders-xoo-dwe-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-http-addresponseheaders-xoo-dwe-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-xoo-dwe-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8093},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8456}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-50-grpc-canary", + "name": "plain-simplemapping-http-addresponseheaders-xoo-dwe-http", "namespace": "plain-namespace", - "resourceVersion": "37263", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-50-grpc-canary", - "uid": "17d34a8c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56155", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-xoo-dwe-http", + "uid": "62160022-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.217.33", + "clusterIP": "10.98.21.165", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8152 + "targetPort": 8093 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8515 + "targetPort": 8456 } ], "selector": { @@ -985,34 +984,33 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-0-canary\nprefix: /CanaryMapping-HTTP-0/\nservice: http://plain-canarymapping-http-0-http-canary.plain-namespace\nweight: 0\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-0-canary\\nprefix: /CanaryMapping-HTTP-0/\\nservice: http://plain-canarymapping-http-0-http-canary.plain-namespace\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-0-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8140},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8503}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemappingingress-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8123},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8486}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-0-http-canary", + "name": "plain-simplemappingingress-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37219", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-0-http-canary", - "uid": "173ebf80-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56276", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemappingingress-grpc-grpc", + "uid": "639a229b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.133.64", + "clusterIP": "10.104.13.137", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8140 + "targetPort": 8123 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8503 + "targetPort": 8486 } ], "selector": { @@ -1030,33 +1028,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermappingingress-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8126},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8489}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: HostHeaderMapping-HTTP\nprefix: /HostHeaderMapping-HTTP/\nservice: http://plain-hostheadermapping-http-http.plain-namespace\nhost: inspector.external\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: HostHeaderMapping-HTTP\\nprefix: /HostHeaderMapping-HTTP/\\nservice: http://plain-hostheadermapping-http-http.plain-namespace\\nhost: inspector.external\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8128},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8491}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-hostheadermappingingress-http-http", + "name": "plain-hostheadermapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37167", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermappingingress-http-http", - "uid": "16937142-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56301", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermapping-http-http", + "uid": "63fbf31e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.57.40", + "clusterIP": "10.109.8.86", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8126 + "targetPort": 8128 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8489 + "targetPort": 8491 } ], "selector": { @@ -1074,34 +1073,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-moo-arf\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-moo-arf/\nservice: http://plain-simplemapping-http-addrequestheaders-moo-arf-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"moo\": \"arf\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-moo-arf\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-moo-arf/\\nservice: http://plain-simplemapping-http-addrequestheaders-moo-arf-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-moo-arf-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8086},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8449}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: RemoveReqHeadersMapping-GRPC\nprefix: /RemoveReqHeadersMapping-GRPC/\nservice: http://httpbin.org\nremove_request_headers:\n- zoo\n- aoo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: RemoveReqHeadersMapping-GRPC\\nprefix: /RemoveReqHeadersMapping-GRPC/\\nservice: http://httpbin.org\\nremove_request_headers:\\n- zoo\\n- aoo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-removereqheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8174},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8537}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addrequestheaders-moo-arf-http", + "name": "plain-removereqheadersmapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37001", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-moo-arf-http", - "uid": "1452dfed-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56475", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-removereqheadersmapping-grpc-grpc", + "uid": "66f1e7a7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.205.234", + "clusterIP": "10.102.81.164", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8086 + "targetPort": 8174 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8449 + "targetPort": 8537 } ], "selector": { @@ -1119,34 +1118,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe/\nservice: http://plain-simplemapping-http-addrequestheaders-xoo-dwe-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-http-addrequestheaders-xoo-dwe-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-xoo-dwe-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8088},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8451}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu/\nservice: http://plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8108},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8471}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addrequestheaders-xoo-dwe-http", + "name": "plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc", "namespace": "plain-namespace", - "resourceVersion": "37009", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-xoo-dwe-http", - "uid": "1470bf81-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56216", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc", + "uid": "62dd247f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.114.237", + "clusterIP": "10.110.255.89", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8088 + "targetPort": 8108 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8451 + "targetPort": 8471 } ], "selector": { @@ -1164,34 +1163,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-Rewrite-SLASH-foo\nprefix: /SimpleMapping-HTTP-Rewrite-SLASH-foo/\nservice: http://plain-simplemapping-http-rewrite-slash-foo-http.plain-namespace\nambassador_id: plain\nrewrite: /foo\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-Rewrite-SLASH-foo\\nprefix: /SimpleMapping-HTTP-Rewrite-SLASH-foo/\\nservice: http://plain-simplemapping-http-rewrite-slash-foo-http.plain-namespace\\nambassador_id: plain\\nrewrite: /foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-rewrite-slash-foo-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8099},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8462}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-Rewrite-foo\nprefix: /SimpleMapping-GRPC-Rewrite-foo/\nservice: http://plain-simplemapping-grpc-rewrite-foo-grpc.plain-namespace\nambassador_id: plain\nrewrite: foo\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-Rewrite-foo\\nprefix: /SimpleMapping-GRPC-Rewrite-foo/\\nservice: http://plain-simplemapping-grpc-rewrite-foo-grpc.plain-namespace\\nambassador_id: plain\\nrewrite: foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-rewrite-foo-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8119},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8482}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-rewrite-slash-foo-http", + "name": "plain-simplemapping-grpc-rewrite-foo-grpc", "namespace": "plain-namespace", - "resourceVersion": "37053", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-rewrite-slash-foo-http", - "uid": "151842ed-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56260", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-rewrite-foo-grpc", + "uid": "6362b288-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.128.8", + "clusterIP": "10.111.18.180", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8099 + "targetPort": 8119 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8462 + "targetPort": 8482 } ], "selector": { @@ -1209,34 +1208,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-GRPC-EXPLICIT\nprefix: /TLSOrigination-GRPC-EXPLICIT/\nservice: plain-tlsorigination-grpc-explicit-grpc.plain-namespace\ntls: true\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-GRPC-EXPLICIT\\nprefix: /TLSOrigination-GRPC-EXPLICIT/\\nservice: plain-tlsorigination-grpc-explicit-grpc.plain-namespace\\ntls: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-grpc-explicit-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8137},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8500}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-UseWebsocket\nprefix: /SimpleMapping-GRPC-UseWebsocket/\nservice: http://plain-simplemapping-grpc-usewebsocket-grpc.plain-namespace\nambassador_id: plain\nuse_websocket: true\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-UseWebsocket\\nprefix: /SimpleMapping-GRPC-UseWebsocket/\\nservice: http://plain-simplemapping-grpc-usewebsocket-grpc.plain-namespace\\nambassador_id: plain\\nuse_websocket: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-usewebsocket-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8114},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8477}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-tlsorigination-grpc-explicit-grpc", + "name": "plain-simplemapping-grpc-usewebsocket-grpc", "namespace": "plain-namespace", - "resourceVersion": "37209", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-grpc-explicit-grpc", - "uid": "171be60b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56242", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-usewebsocket-grpc", + "uid": "6330a8e6-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.1.54", + "clusterIP": "10.101.88.218", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8137 + "targetPort": 8114 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8500 + "targetPort": 8477 } ], "selector": { @@ -1254,34 +1253,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-10-canary\nprefix: /CanaryDiffMapping-GRPC-10/\nservice: http://plain-canarydiffmapping-grpc-10-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 10\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-10-canary\\nprefix: /CanaryDiffMapping-GRPC-10/\\nservice: http://plain-canarydiffmapping-grpc-10-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-10-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8166},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8529}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu/\nservice: http://plain-simplemapping-http-addrequestheaders-aoo-tyu-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-http-addrequestheaders-aoo-tyu-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-aoo-tyu-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8089},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8452}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-10-grpc-canary", + "name": "plain-simplemapping-http-addrequestheaders-aoo-tyu-http", "namespace": "plain-namespace", - "resourceVersion": "37328", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-10-grpc-canary", - "uid": "19675970-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56138", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-aoo-tyu-http", + "uid": "61e2852e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.163.129", + "clusterIP": "10.102.172.124", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8166 + "targetPort": 8089 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8529 + "targetPort": 8452 } ], "selector": { @@ -1299,34 +1298,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-100\nprefix: /CanaryMapping-GRPC-100/\nservice: http://plain-canarymapping-grpc-100-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-100\\nprefix: /CanaryMapping-GRPC-100/\\nservice: http://plain-canarymapping-grpc-100-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-100-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8153},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8516}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-0\nprefix: /CanaryDiffMapping-GRPC-0/\nservice: http://plain-canarydiffmapping-grpc-0-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-0\\nprefix: /CanaryDiffMapping-GRPC-0/\\nservice: http://plain-canarydiffmapping-grpc-0-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-0-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8163},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8526}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:57Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-100-grpc", + "name": "plain-canarydiffmapping-grpc-0-grpc", "namespace": "plain-namespace", - "resourceVersion": "37272", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-100-grpc", - "uid": "184b032a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56434", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-0-grpc", + "uid": "662df40b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.207.73", + "clusterIP": "10.108.160.170", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8153 + "targetPort": 8163 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8516 + "targetPort": 8526 } ], "selector": { @@ -1344,34 +1343,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-100-canary\nprefix: /CanaryMapping-GRPC-100/\nservice: http://plain-canarymapping-grpc-100-grpc-canary.plain-namespace\nweight: 100\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-100-canary\\nprefix: /CanaryMapping-GRPC-100/\\nservice: http://plain-canarymapping-grpc-100-grpc-canary.plain-namespace\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-100-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8154},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8517}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-100\nprefix: /CanaryMapping-GRPC-100/\nservice: http://plain-canarymapping-grpc-100-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-100\\nprefix: /CanaryMapping-GRPC-100/\\nservice: http://plain-canarymapping-grpc-100-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-100-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8153},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8516}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:57Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-100-grpc-canary", + "name": "plain-canarymapping-grpc-100-grpc", "namespace": "plain-namespace", - "resourceVersion": "37277", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-100-grpc-canary", - "uid": "185d666a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56396", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-100-grpc", + "uid": "657c9ee7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.240.68", + "clusterIP": "10.108.68.85", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8154 + "targetPort": 8153 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8517 + "targetPort": 8516 } ], "selector": { @@ -1389,33 +1388,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simpleingresswithannotations-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8125},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8488}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-GRPC-target2\nprefix: /HeaderRoutingTest-GRPC/\nservice: http://plain-headerroutingtest-grpc-grpc-target2.plain-namespace\nheaders:\n X-Route: target2\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-GRPC-target2\\nprefix: /HeaderRoutingTest-GRPC/\\nservice: http://plain-headerroutingtest-grpc-grpc-target2.plain-namespace\\nheaders:\\n X-Route: target2\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-grpc-grpc-target2\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8083},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8446}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simpleingresswithannotations-grpc-grpc", + "name": "plain-headerroutingtest-grpc-grpc-target2", "namespace": "plain-namespace", - "resourceVersion": "37161", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simpleingresswithannotations-grpc-grpc", - "uid": "167daad9-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56116", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-grpc-grpc-target2", + "uid": "6194a91d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.250.79", + "clusterIP": "10.97.246.8", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8125 + "targetPort": 8083 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8488 + "targetPort": 8446 } ], "selector": { @@ -1433,34 +1433,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-0-canary\nprefix: /CanaryDiffMapping-GRPC-0/\nservice: http://plain-canarydiffmapping-grpc-0-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 0\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-0-canary\\nprefix: /CanaryDiffMapping-GRPC-0/\\nservice: http://plain-canarydiffmapping-grpc-0-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-0-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8164},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8527}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: InvalidPortMapping-GRPC\nprefix: /InvalidPortMapping-GRPC/\nservice: http://plain-invalidportmapping-grpc-grpc.plain-namespace:80.invalid\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: InvalidPortMapping-GRPC\\nprefix: /InvalidPortMapping-GRPC/\\nservice: http://plain-invalidportmapping-grpc-grpc.plain-namespace:80.invalid\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-invalidportmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8131},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8494}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-0-grpc-canary", + "name": "plain-invalidportmapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37319", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-0-grpc-canary", - "uid": "1934e5ad-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56313", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-invalidportmapping-grpc-grpc", + "uid": "64327286-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.145.117", + "clusterIP": "10.107.219.170", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8164 + "targetPort": 8131 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8527 + "targetPort": 8494 } ], "selector": { @@ -1478,34 +1478,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-0-canary\nprefix: /CanaryDiffMapping-HTTP-0/\nservice: http://plain-canarydiffmapping-http-0-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 0\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-0-canary\\nprefix: /CanaryDiffMapping-HTTP-0/\\nservice: http://plain-canarydiffmapping-http-0-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-0-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8156},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8519}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-Rewrite-SLASH-foo\nprefix: /SimpleMapping-GRPC-Rewrite-SLASH-foo/\nservice: http://plain-simplemapping-grpc-rewrite-slash-foo-grpc.plain-namespace\nambassador_id: plain\nrewrite: /foo\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-Rewrite-SLASH-foo\\nprefix: /SimpleMapping-GRPC-Rewrite-SLASH-foo/\\nservice: http://plain-simplemapping-grpc-rewrite-slash-foo-grpc.plain-namespace\\nambassador_id: plain\\nrewrite: /foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-rewrite-slash-foo-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8118},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8481}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-0-http-canary", + "name": "plain-simplemapping-grpc-rewrite-slash-foo-grpc", "namespace": "plain-namespace", - "resourceVersion": "37287", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-0-http-canary", - "uid": "18a8a466-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56256", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-rewrite-slash-foo-grpc", + "uid": "6357d96d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.78.253", + "clusterIP": "10.109.73.56", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8156 + "targetPort": 8118 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8519 + "targetPort": 8481 } ], "selector": { @@ -1523,34 +1523,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-50\nprefix: /CanaryDiffMapping-HTTP-50/\nservice: http://plain-canarydiffmapping-http-50-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-50\\nprefix: /CanaryDiffMapping-HTTP-50/\\nservice: http://plain-canarydiffmapping-http-50-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-50-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8159},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8522}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP\nprefix: /SimpleMapping-HTTP/\nservice: http://plain-simplemapping-http-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP\\nprefix: /SimpleMapping-HTTP/\\nservice: http://plain-simplemapping-http-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8084},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8447}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-50-http", + "name": "plain-simplemapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37299", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-50-http", - "uid": "18d620ad-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56120", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-http", + "uid": "61a14ee4-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.218.180", + "clusterIP": "10.100.72.152", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8159 + "targetPort": 8084 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8522 + "targetPort": 8447 } ], "selector": { @@ -1568,34 +1568,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-0\nprefix: /CanaryMapping-GRPC-0/\nservice: http://plain-canarymapping-grpc-0-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-0\\nprefix: /CanaryMapping-GRPC-0/\\nservice: http://plain-canarymapping-grpc-0-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-0-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8147},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8510}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-0-canary\nprefix: /CanaryDiffMapping-GRPC-0/\nservice: http://plain-canarydiffmapping-grpc-0-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 0\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-0-canary\\nprefix: /CanaryDiffMapping-GRPC-0/\\nservice: http://plain-canarydiffmapping-grpc-0-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-0-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8164},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8527}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-0-grpc", + "name": "plain-canarydiffmapping-grpc-0-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "37246", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-0-grpc", - "uid": "179816ee-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56438", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-0-grpc-canary", + "uid": "663d164e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.96.211", + "clusterIP": "10.106.152.23", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8147 + "targetPort": 8164 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8510 + "targetPort": 8527 } ], "selector": { @@ -1613,34 +1613,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-0\nprefix: /CanaryMapping-HTTP-0/\nservice: http://plain-canarymapping-http-0-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-0\\nprefix: /CanaryMapping-HTTP-0/\\nservice: http://plain-canarymapping-http-0-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-0-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8139},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8502}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-0\nprefix: /CanaryDiffMapping-HTTP-0/\nservice: http://plain-canarydiffmapping-http-0-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-0\\nprefix: /CanaryDiffMapping-HTTP-0/\\nservice: http://plain-canarydiffmapping-http-0-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-0-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8155},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8518}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-0-http", + "name": "plain-canarydiffmapping-http-0-http", "namespace": "plain-namespace", - "resourceVersion": "37215", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-0-http", - "uid": "1730f72e-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56405", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-0-http", + "uid": "65aa7257-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.161.151", + "clusterIP": "10.99.116.2", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8139 + "targetPort": 8155 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8502 + "targetPort": 8518 } ], "selector": { @@ -1658,34 +1658,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-10\nprefix: /CanaryMapping-HTTP-10/\nservice: http://plain-canarymapping-http-10-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-10\\nprefix: /CanaryMapping-HTTP-10/\\nservice: http://plain-canarymapping-http-10-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-10-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8141},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8504}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-100\nprefix: /CanaryDiffMapping-HTTP-100/\nservice: http://plain-canarydiffmapping-http-100-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-100\\nprefix: /CanaryDiffMapping-HTTP-100/\\nservice: http://plain-canarydiffmapping-http-100-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-100-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8161},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8524}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-10-http", + "name": "plain-canarydiffmapping-http-100-http", "namespace": "plain-namespace", - "resourceVersion": "37224", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-10-http", - "uid": "174b6937-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56426", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-100-http", + "uid": "660e1c6d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.89.125", + "clusterIP": "10.107.125.193", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8141 + "targetPort": 8161 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8504 + "targetPort": 8524 } ], "selector": { @@ -1703,34 +1703,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-HTTP-target1\nprefix: /HeaderRoutingTest-HTTP/\nservice: http://plain-headerroutingtest-http-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-HTTP-target1\\nprefix: /HeaderRoutingTest-HTTP/\\nservice: http://plain-headerroutingtest-http-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-100-canary\nprefix: /CanaryMapping-GRPC-100/\nservice: http://plain-canarymapping-grpc-100-grpc-canary.plain-namespace\nweight: 100\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-100-canary\\nprefix: /CanaryMapping-GRPC-100/\\nservice: http://plain-canarymapping-grpc-100-grpc-canary.plain-namespace\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-100-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8154},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8517}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-headerroutingtest-http-http", + "name": "plain-canarymapping-grpc-100-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "36976", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-http-http", - "uid": "1401d16d-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56401", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-100-grpc-canary", + "uid": "659550f8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.230.205", + "clusterIP": "10.111.108.86", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8154 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8517 } ], "selector": { @@ -1748,33 +1748,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermappingingress-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8127},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8490}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-50\nprefix: /CanaryMapping-GRPC-50/\nservice: http://plain-canarymapping-grpc-50-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-50\\nprefix: /CanaryMapping-GRPC-50/\\nservice: http://plain-canarymapping-grpc-50-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-50-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8151},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8514}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-hostheadermappingingress-grpc-grpc", + "name": "plain-canarymapping-grpc-50-grpc", "namespace": "plain-namespace", - "resourceVersion": "37173", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermappingingress-grpc-grpc", - "uid": "16a6d06f-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56389", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-50-grpc", + "uid": "65571f94-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.117.96", + "clusterIP": "10.105.34.200", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8127 + "targetPort": 8151 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8490 + "targetPort": 8514 } ], "selector": { @@ -1792,34 +1793,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddRespHeadersMapping-GRPC\nprefix: /AddRespHeadersMapping-GRPC/\nservice: http://httpbin.org\nadd_response_headers:\n koo:\n append: False\n value: KooK\n zoo:\n append: True\n value: ZooZ\n test:\n value: boo\n foo: Foo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddRespHeadersMapping-GRPC\\nprefix: /AddRespHeadersMapping-GRPC/\\nservice: http://httpbin.org\\nadd_response_headers:\\n koo:\\n append: False\\n value: KooK\\n zoo:\\n append: True\\n value: ZooZ\\n test:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addrespheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8172},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8535}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-50\nprefix: /CanaryMapping-HTTP-50/\nservice: http://plain-canarymapping-http-50-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-50\\nprefix: /CanaryMapping-HTTP-50/\\nservice: http://plain-canarymapping-http-50-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-50-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8143},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8506}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-addrespheadersmapping-grpc-grpc", + "name": "plain-canarymapping-http-50-http", "namespace": "plain-namespace", - "resourceVersion": "37351", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addrespheadersmapping-grpc-grpc", - "uid": "19cff6cd-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56359", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-50-http", + "uid": "64d17c8a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.123.66", + "clusterIP": "10.98.92.230", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8172 + "targetPort": 8143 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8535 + "targetPort": 8506 } ], "selector": { @@ -1837,34 +1838,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-all\nprefix: /SimpleMapping-GRPC-all/\nservice: http://plain-simplemapping-grpc-all-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\nadd_response_headers: {\"foo\": \"bar\"}\nuse_websocket: true\ncors: {origins: \"*\"}\ncase_sensitive: false\nauto_host_rewrite: true\nrewrite: /foo\nremove_response_headers: x-envoy-upstream-service-time\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-all\\nprefix: /SimpleMapping-GRPC-all/\\nservice: http://plain-simplemapping-grpc-all-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\nuse_websocket: true\\ncors: {origins: \\\"*\\\"}\\ncase_sensitive: false\\nauto_host_rewrite: true\\nrewrite: /foo\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-all-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8121},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8484}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-foo-bar\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-foo-bar/\nservice: http://plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-foo-bar\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-foo-bar/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8104},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8467}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-all-grpc", + "name": "plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc", "namespace": "plain-namespace", - "resourceVersion": "37142", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-all-grpc", - "uid": "162bfcaa-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56199", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc", + "uid": "62a7861c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.136.235", + "clusterIP": "10.111.208.6", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8121 + "targetPort": 8104 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8484 + "targetPort": 8467 } ], "selector": { @@ -1882,34 +1883,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-Rewrite-foo\nprefix: /SimpleMapping-GRPC-Rewrite-foo/\nservice: http://plain-simplemapping-grpc-rewrite-foo-grpc.plain-namespace\nambassador_id: plain\nrewrite: foo\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-Rewrite-foo\\nprefix: /SimpleMapping-GRPC-Rewrite-foo/\\nservice: http://plain-simplemapping-grpc-rewrite-foo-grpc.plain-namespace\\nambassador_id: plain\\nrewrite: foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-rewrite-foo-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8119},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8482}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-0\nprefix: /CanaryMapping-HTTP-0/\nservice: http://plain-canarymapping-http-0-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-0\\nprefix: /CanaryMapping-HTTP-0/\\nservice: http://plain-canarymapping-http-0-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-0-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8139},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8502}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-rewrite-foo-grpc", + "name": "plain-canarymapping-http-0-http", "namespace": "plain-namespace", - "resourceVersion": "37135", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-rewrite-foo-grpc", - "uid": "1618868c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56343", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-0-http", + "uid": "64923059-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.247.210", + "clusterIP": "10.102.166.87", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8119 + "targetPort": 8139 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8482 + "targetPort": 8502 } ], "selector": { @@ -1927,34 +1928,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: WebSocketMapping-GRPC\nprefix: /WebSocketMapping-GRPC/\nservice: echo.websocket.org:80\nhost_rewrite: echo.websocket.org\nuse_websocket: true\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: WebSocketMapping-GRPC\\nprefix: /WebSocketMapping-GRPC/\\nservice: echo.websocket.org:80\\nhost_rewrite: echo.websocket.org\\nuse_websocket: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-websocketmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8133},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8496}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-100-canary\nprefix: /CanaryMapping-HTTP-100/\nservice: http://plain-canarymapping-http-100-http-canary.plain-namespace\nweight: 100\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-100-canary\\nprefix: /CanaryMapping-HTTP-100/\\nservice: http://plain-canarymapping-http-100-http-canary.plain-namespace\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-100-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8146},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8509}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-websocketmapping-grpc-grpc", + "name": "plain-canarymapping-http-100-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37194", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-websocketmapping-grpc-grpc", - "uid": "16ebe741-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56370", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-100-http-canary", + "uid": "64fe43ec-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.140.0", + "clusterIP": "10.106.55.181", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8133 + "targetPort": 8146 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8496 + "targetPort": 8509 } ], "selector": { @@ -1975,19 +1976,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-zoo-bar\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-zoo-bar/\nservice: http://plain-simplemapping-grpc-addresponseheaders-zoo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-zoo-bar\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-zoo-bar/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-zoo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-zoo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8111},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8474}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, "name": "plain-simplemapping-grpc-addresponseheaders-zoo-bar-grpc", "namespace": "plain-namespace", - "resourceVersion": "37105", + "resourceVersion": "56229", "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-zoo-bar-grpc", - "uid": "15af1c92-4794-11ea-829a-062d8f98984d" + "uid": "63022a9b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.109.154", + "clusterIP": "10.101.155.164", "ports": [ { "name": "http", @@ -2017,34 +2018,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddRespHeadersMapping-HTTP\nprefix: /AddRespHeadersMapping-HTTP/\nservice: http://httpbin.org\nadd_response_headers:\n koo:\n append: False\n value: KooK\n zoo:\n append: True\n value: ZooZ\n test:\n value: boo\n foo: Foo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddRespHeadersMapping-HTTP\\nprefix: /AddRespHeadersMapping-HTTP/\\nservice: http://httpbin.org\\nadd_response_headers:\\n koo:\\n append: False\\n value: KooK\\n zoo:\\n append: True\\n value: ZooZ\\n test:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addrespheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8171},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8534}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AutoHostRewrite\nprefix: /SimpleMapping-GRPC-AutoHostRewrite/\nservice: http://plain-simplemapping-grpc-autohostrewrite-grpc.plain-namespace\nambassador_id: plain\nauto_host_rewrite: true\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AutoHostRewrite\\nprefix: /SimpleMapping-GRPC-AutoHostRewrite/\\nservice: http://plain-simplemapping-grpc-autohostrewrite-grpc.plain-namespace\\nambassador_id: plain\\nauto_host_rewrite: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-autohostrewrite-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8117},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8480}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-addrespheadersmapping-http-http", + "name": "plain-simplemapping-grpc-autohostrewrite-grpc", "namespace": "plain-namespace", - "resourceVersion": "37347", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addrespheadersmapping-http-http", - "uid": "19bf80d7-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56252", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-autohostrewrite-grpc", + "uid": "634dce24-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.54.147", + "clusterIP": "10.110.255.142", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8171 + "targetPort": 8117 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8534 + "targetPort": 8480 } ], "selector": { @@ -2062,34 +2063,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: InvalidPortMapping-HTTP\nprefix: /InvalidPortMapping-HTTP/\nservice: http://plain-invalidportmapping-http-http.plain-namespace:80.invalid\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: InvalidPortMapping-HTTP\\nprefix: /InvalidPortMapping-HTTP/\\nservice: http://plain-invalidportmapping-http-http.plain-namespace:80.invalid\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-invalidportmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8130},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8493}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-CaseSensitive\nprefix: /SimpleMapping-HTTP-CaseSensitive/\nservice: http://plain-simplemapping-http-casesensitive-http.plain-namespace\nambassador_id: plain\ncase_sensitive: false\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-CaseSensitive\\nprefix: /SimpleMapping-HTTP-CaseSensitive/\\nservice: http://plain-simplemapping-http-casesensitive-http.plain-namespace\\nambassador_id: plain\\ncase_sensitive: false\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-casesensitive-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8097},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8460}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-invalidportmapping-http-http", + "name": "plain-simplemapping-http-casesensitive-http", "namespace": "plain-namespace", - "resourceVersion": "37184", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-invalidportmapping-http-http", - "uid": "16cb19a7-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56169", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-casesensitive-http", + "uid": "6241b74d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.85.140", + "clusterIP": "10.103.225.95", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8130 + "targetPort": 8097 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8493 + "targetPort": 8460 } ], "selector": { @@ -2107,34 +2108,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu/\nservice: http://plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8113},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8476}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-Rewrite-foo\nprefix: /SimpleMapping-HTTP-Rewrite-foo/\nservice: http://plain-simplemapping-http-rewrite-foo-http.plain-namespace\nambassador_id: plain\nrewrite: foo\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-Rewrite-foo\\nprefix: /SimpleMapping-HTTP-Rewrite-foo/\\nservice: http://plain-simplemapping-http-rewrite-foo-http.plain-namespace\\nambassador_id: plain\\nrewrite: foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-rewrite-foo-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8100},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8463}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc", + "name": "plain-simplemapping-http-rewrite-foo-http", "namespace": "plain-namespace", - "resourceVersion": "37111", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc", - "uid": "15c40e4a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56183", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-rewrite-foo-http", + "uid": "62761551-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.25.154", + "clusterIP": "10.103.82.246", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8113 + "targetPort": 8100 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8476 + "targetPort": 8463 } ], "selector": { @@ -2152,34 +2153,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-RemoveResponseHeaders\nprefix: /SimpleMapping-HTTP-RemoveResponseHeaders/\nservice: http://plain-simplemapping-http-removeresponseheaders-http.plain-namespace\nambassador_id: plain\nremove_response_headers: x-envoy-upstream-service-time\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-RemoveResponseHeaders\\nprefix: /SimpleMapping-HTTP-RemoveResponseHeaders/\\nservice: http://plain-simplemapping-http-removeresponseheaders-http.plain-namespace\\nambassador_id: plain\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-removeresponseheaders-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8101},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8464}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-100\nprefix: /CanaryDiffMapping-GRPC-100/\nservice: http://plain-canarydiffmapping-grpc-100-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-100\\nprefix: /CanaryDiffMapping-GRPC-100/\\nservice: http://plain-canarydiffmapping-grpc-100-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-100-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8169},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8532}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-removeresponseheaders-http", + "name": "plain-canarydiffmapping-grpc-100-grpc", "namespace": "plain-namespace", - "resourceVersion": "37063", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-removeresponseheaders-http", - "uid": "15318f6a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56456", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-100-grpc", + "uid": "669633be-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.166.227", + "clusterIP": "10.98.144.161", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8101 + "targetPort": 8169 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8464 + "targetPort": 8532 } ], "selector": { @@ -2197,34 +2198,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-HTTP-IMPLICIT\nprefix: /TLSOrigination-HTTP-IMPLICIT/\nservice: https://plain-tlsorigination-http-implicit-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-HTTP-IMPLICIT\\nprefix: /TLSOrigination-HTTP-IMPLICIT/\\nservice: https://plain-tlsorigination-http-implicit-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-http-implicit-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8134},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8497}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-10-canary\nprefix: /CanaryMapping-GRPC-10/\nservice: http://plain-canarymapping-grpc-10-grpc-canary.plain-namespace\nweight: 10\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-10-canary\\nprefix: /CanaryMapping-GRPC-10/\\nservice: http://plain-canarymapping-grpc-10-grpc-canary.plain-namespace\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-10-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8150},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8513}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-tlsorigination-http-implicit-http", + "name": "plain-canarymapping-grpc-10-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "37197", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-http-implicit-http", - "uid": "16f62812-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56385", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-10-grpc-canary", + "uid": "6546b632-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.18.111", + "clusterIP": "10.106.161.96", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8134 + "targetPort": 8150 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8497 + "targetPort": 8513 } ], "selector": { @@ -2242,34 +2243,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddReqHeadersMapping-GRPC\nprefix: /AddReqHeadersMapping-GRPC/\nservice: http://plain-addreqheadersmapping-grpc-grpc.plain-namespace\nadd_request_headers:\n zoo:\n append: False\n value: Zoo\n aoo:\n append: True\n value: aoo\n boo:\n value: boo\n foo: Foo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddReqHeadersMapping-GRPC\\nprefix: /AddReqHeadersMapping-GRPC/\\nservice: http://plain-addreqheadersmapping-grpc-grpc.plain-namespace\\nadd_request_headers:\\n zoo:\\n append: False\\n value: Zoo\\n aoo:\\n append: True\\n value: aoo\\n boo:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addreqheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8176},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8539}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-10\nprefix: /CanaryMapping-HTTP-10/\nservice: http://plain-canarymapping-http-10-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-10\\nprefix: /CanaryMapping-HTTP-10/\\nservice: http://plain-canarymapping-http-10-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-10-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8141},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8504}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-addreqheadersmapping-grpc-grpc", + "name": "plain-canarymapping-http-10-http", "namespace": "plain-namespace", - "resourceVersion": "37365", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addreqheadersmapping-grpc-grpc", - "uid": "1a1a0dbe-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56351", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-10-http", + "uid": "64b1c734-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.134.153", + "clusterIP": "10.103.41.125", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8176 + "targetPort": 8141 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8539 + "targetPort": 8504 } ], "selector": { @@ -2287,34 +2288,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-0\nprefix: /CanaryDiffMapping-HTTP-0/\nservice: http://plain-canarydiffmapping-http-0-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-0\\nprefix: /CanaryDiffMapping-HTTP-0/\\nservice: http://plain-canarydiffmapping-http-0-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-0-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8155},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8518}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe/\nservice: http://plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8107},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8470}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-0-http", + "name": "plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc", "namespace": "plain-namespace", - "resourceVersion": "37284", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-0-http", - "uid": "189aa744-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56212", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc", + "uid": "62d17cc8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.7.219", + "clusterIP": "10.96.17.236", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8155 + "targetPort": 8107 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8518 + "targetPort": 8470 } ], "selector": { @@ -2332,34 +2333,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-50-canary\nprefix: /CanaryDiffMapping-HTTP-50/\nservice: http://plain-canarydiffmapping-http-50-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 50\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-50-canary\\nprefix: /CanaryDiffMapping-HTTP-50/\\nservice: http://plain-canarydiffmapping-http-50-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-50-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8160},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8523}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-moo-arf\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-moo-arf/\nservice: http://plain-simplemapping-http-addrequestheaders-moo-arf-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"moo\": \"arf\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-moo-arf\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-moo-arf/\\nservice: http://plain-simplemapping-http-addrequestheaders-moo-arf-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-moo-arf-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8086},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8449}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-50-http-canary", + "name": "plain-simplemapping-http-addrequestheaders-moo-arf-http", "namespace": "plain-namespace", - "resourceVersion": "37303", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-50-http-canary", - "uid": "18f1302e-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56128", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-moo-arf-http", + "uid": "61bb643e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.16.30", + "clusterIP": "10.109.203.36", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8160 + "targetPort": 8086 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8523 + "targetPort": 8449 } ], "selector": { @@ -2379,19 +2380,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemappingingress-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8122},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8485}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, "name": "plain-simplemappingingress-http-http", "namespace": "plain-namespace", - "resourceVersion": "37146", + "resourceVersion": "56271", "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemappingingress-http-http", - "uid": "16422fcb-4794-11ea-829a-062d8f98984d" + "uid": "63887101-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.9.174", + "clusterIP": "10.105.167.155", "ports": [ { "name": "http", @@ -2421,34 +2422,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-50\nprefix: /CanaryDiffMapping-GRPC-50/\nservice: http://plain-canarydiffmapping-grpc-50-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-50\\nprefix: /CanaryDiffMapping-GRPC-50/\\nservice: http://plain-canarydiffmapping-grpc-50-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-50-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8167},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8530}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-10-canary\nprefix: /CanaryDiffMapping-HTTP-10/\nservice: http://plain-canarydiffmapping-http-10-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 10\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-10-canary\\nprefix: /CanaryDiffMapping-HTTP-10/\\nservice: http://plain-canarydiffmapping-http-10-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-10-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8158},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8521}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-50-grpc", + "name": "plain-canarydiffmapping-http-10-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37331", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-50-grpc", - "uid": "197ad247-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56416", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-10-http-canary", + "uid": "65dca479-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.7.20", + "clusterIP": "10.100.145.149", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8167 + "targetPort": 8158 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8530 + "targetPort": 8521 } ], "selector": { @@ -2466,34 +2467,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-10\nprefix: /CanaryMapping-GRPC-10/\nservice: http://plain-canarymapping-grpc-10-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-10\\nprefix: /CanaryMapping-GRPC-10/\\nservice: http://plain-canarymapping-grpc-10-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-10-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8149},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8512}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-0-canary\nprefix: /CanaryMapping-GRPC-0/\nservice: http://plain-canarymapping-grpc-0-grpc-canary.plain-namespace\nweight: 0\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-0-canary\\nprefix: /CanaryMapping-GRPC-0/\\nservice: http://plain-canarymapping-grpc-0-grpc-canary.plain-namespace\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-0-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8148},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8511}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-10-grpc", + "name": "plain-canarymapping-grpc-0-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "37252", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-10-grpc", - "uid": "17ae8c48-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56378", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-0-grpc-canary", + "uid": "6529eb09-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.229.237", + "clusterIP": "10.111.92.220", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8149 + "targetPort": 8148 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8512 + "targetPort": 8511 } ], "selector": { @@ -2511,34 +2512,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-50\nprefix: /CanaryMapping-GRPC-50/\nservice: http://plain-canarymapping-grpc-50-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-50\\nprefix: /CanaryMapping-GRPC-50/\\nservice: http://plain-canarymapping-grpc-50-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-50-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8151},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8514}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-10\nprefix: /CanaryMapping-GRPC-10/\nservice: http://plain-canarymapping-grpc-10-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-10\\nprefix: /CanaryMapping-GRPC-10/\\nservice: http://plain-canarymapping-grpc-10-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-10-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8149},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8512}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-50-grpc", + "name": "plain-canarymapping-grpc-10-grpc", "namespace": "plain-namespace", - "resourceVersion": "37259", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-50-grpc", - "uid": "17c69126-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56381", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-10-grpc", + "uid": "653852ef-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.24.134", + "clusterIP": "10.100.194.104", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8151 + "targetPort": 8149 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8514 + "targetPort": 8512 } ], "selector": { @@ -2556,34 +2557,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-10-canary\nprefix: /CanaryMapping-HTTP-10/\nservice: http://plain-canarymapping-http-10-http-canary.plain-namespace\nweight: 10\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-10-canary\\nprefix: /CanaryMapping-HTTP-10/\\nservice: http://plain-canarymapping-http-10-http-canary.plain-namespace\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-10-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8142},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8505}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-50-canary\nprefix: /CanaryMapping-HTTP-50/\nservice: http://plain-canarymapping-http-50-http-canary.plain-namespace\nweight: 50\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-50-canary\\nprefix: /CanaryMapping-HTTP-50/\\nservice: http://plain-canarymapping-http-50-http-canary.plain-namespace\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-50-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8144},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8507}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-10-http-canary", + "name": "plain-canarymapping-http-50-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37228", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-10-http-canary", - "uid": "1763072f-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56362", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-50-http-canary", + "uid": "64e03e82-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.193.22", + "clusterIP": "10.108.217.220", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8142 + "targetPort": 8144 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8505 + "targetPort": 8507 } ], "selector": { @@ -2601,34 +2602,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-GRPC-target2\nprefix: /HeaderRoutingTest-GRPC/\nservice: http://plain-headerroutingtest-grpc-grpc-target2.plain-namespace\nheaders:\n X-Route: target2\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-GRPC-target2\\nprefix: /HeaderRoutingTest-GRPC/\\nservice: http://plain-headerroutingtest-grpc-grpc-target2.plain-namespace\\nheaders:\\n X-Route: target2\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-grpc-grpc-target2\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8083},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8446}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-CaseSensitive\nprefix: /SimpleMapping-GRPC-CaseSensitive/\nservice: http://plain-simplemapping-grpc-casesensitive-grpc.plain-namespace\nambassador_id: plain\ncase_sensitive: false\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-CaseSensitive\\nprefix: /SimpleMapping-GRPC-CaseSensitive/\\nservice: http://plain-simplemapping-grpc-casesensitive-grpc.plain-namespace\\nambassador_id: plain\\ncase_sensitive: false\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-casesensitive-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8116},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8479}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-headerroutingtest-grpc-grpc-target2", + "name": "plain-simplemapping-grpc-casesensitive-grpc", "namespace": "plain-namespace", - "resourceVersion": "36989", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-grpc-grpc-target2", - "uid": "142a4c40-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56249", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-casesensitive-grpc", + "uid": "6344a6d7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.88.214", + "clusterIP": "10.99.31.183", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8083 + "targetPort": 8116 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8446 + "targetPort": 8479 } ], "selector": { @@ -2646,34 +2647,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HeaderRoutingTest-HTTP-target2\nprefix: /HeaderRoutingTest-HTTP/\nservice: http://plain-headerroutingtest-http-http-target2.plain-namespace\nheaders:\n X-Route: target2\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HeaderRoutingTest-HTTP-target2\\nprefix: /HeaderRoutingTest-HTTP/\\nservice: http://plain-headerroutingtest-http-http-target2.plain-namespace\\nheaders:\\n X-Route: target2\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-headerroutingtest-http-http-target2\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC\nprefix: /SimpleMapping-GRPC/\nservice: http://plain-simplemapping-grpc-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC\\nprefix: /SimpleMapping-GRPC/\\nservice: http://plain-simplemapping-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8103},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8466}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-headerroutingtest-http-http-target2", + "name": "plain-simplemapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "36981", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-headerroutingtest-http-http-target2", - "uid": "140e5406-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56195", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-grpc", + "uid": "62997124-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.136.105", + "clusterIP": "10.97.165.65", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8081 + "targetPort": 8103 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8444 + "targetPort": 8466 } ], "selector": { @@ -2694,19 +2695,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-foo-bar\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-foo-bar/\nservice: http://plain-simplemapping-http-addresponseheaders-foo-bar-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"foo\": \"bar\"}\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-foo-bar\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-foo-bar/\\nservice: http://plain-simplemapping-http-addresponseheaders-foo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-foo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8090},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8453}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, "name": "plain-simplemapping-http-addresponseheaders-foo-bar-http", "namespace": "plain-namespace", - "resourceVersion": "37016", + "resourceVersion": "56144", "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-foo-bar-http", - "uid": "1488f2e9-4794-11ea-829a-062d8f98984d" + "uid": "61f1d6e5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.174.162", + "clusterIP": "10.105.244.207", "ports": [ { "name": "http", @@ -2736,34 +2737,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe/\nservice: http://plain-simplemapping-http-addresponseheaders-xoo-dwe-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-http-addresponseheaders-xoo-dwe-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-xoo-dwe-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8093},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8456}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-10-canary\nprefix: /CanaryDiffMapping-GRPC-10/\nservice: http://plain-canarydiffmapping-grpc-10-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 10\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-10-canary\\nprefix: /CanaryDiffMapping-GRPC-10/\\nservice: http://plain-canarydiffmapping-grpc-10-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-10-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8166},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8529}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addresponseheaders-xoo-dwe-http", + "name": "plain-canarydiffmapping-grpc-10-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "37028", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-xoo-dwe-http", - "uid": "14bc28a6-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56445", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-10-grpc-canary", + "uid": "6654d4cd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.167.187", + "clusterIP": "10.110.78.179", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8093 + "targetPort": 8166 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8456 + "targetPort": 8529 } ], "selector": { @@ -2781,34 +2782,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-0-canary\nprefix: /CanaryMapping-GRPC-0/\nservice: http://plain-canarymapping-grpc-0-grpc-canary.plain-namespace\nweight: 0\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-0-canary\\nprefix: /CanaryMapping-GRPC-0/\\nservice: http://plain-canarymapping-grpc-0-grpc-canary.plain-namespace\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-0-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8148},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8511}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-0-canary\nprefix: /CanaryDiffMapping-HTTP-0/\nservice: http://plain-canarydiffmapping-http-0-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 0\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-0-canary\\nprefix: /CanaryDiffMapping-HTTP-0/\\nservice: http://plain-canarydiffmapping-http-0-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-0-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8156},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8519}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-0-grpc-canary", + "name": "plain-canarydiffmapping-http-0-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37249", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-0-grpc-canary", - "uid": "17a37074-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56408", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-0-http-canary", + "uid": "65ba7452-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.136.125", + "clusterIP": "10.111.210.217", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8148 + "targetPort": 8156 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8511 + "targetPort": 8519 } ], "selector": { @@ -2826,33 +2827,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemappingingress-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8123},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8486}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-50-canary\nprefix: /CanaryDiffMapping-HTTP-50/\nservice: http://plain-canarydiffmapping-http-50-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 50\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-50-canary\\nprefix: /CanaryDiffMapping-HTTP-50/\\nservice: http://plain-canarydiffmapping-http-50-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-50-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8160},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8523}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemappingingress-grpc-grpc", + "name": "plain-canarydiffmapping-http-50-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37152", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemappingingress-grpc-grpc", - "uid": "1655d283-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56423", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-50-http-canary", + "uid": "65fc8070-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.181.250", + "clusterIP": "10.99.189.226", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8123 + "targetPort": 8160 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8486 + "targetPort": 8523 } ], "selector": { @@ -2870,34 +2872,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-GRPC-IMPLICIT\nprefix: /TLSOrigination-GRPC-IMPLICIT/\nservice: https://plain-tlsorigination-grpc-implicit-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-GRPC-IMPLICIT\\nprefix: /TLSOrigination-GRPC-IMPLICIT/\\nservice: https://plain-tlsorigination-grpc-implicit-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-grpc-implicit-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8136},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8499}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-RemoveResponseHeaders\nprefix: /SimpleMapping-GRPC-RemoveResponseHeaders/\nservice: http://plain-simplemapping-grpc-removeresponseheaders-grpc.plain-namespace\nambassador_id: plain\nremove_response_headers: x-envoy-upstream-service-time\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-RemoveResponseHeaders\\nprefix: /SimpleMapping-GRPC-RemoveResponseHeaders/\\nservice: http://plain-simplemapping-grpc-removeresponseheaders-grpc.plain-namespace\\nambassador_id: plain\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-removeresponseheaders-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8120},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8483}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-tlsorigination-grpc-implicit-grpc", + "name": "plain-simplemapping-grpc-removeresponseheaders-grpc", "namespace": "plain-namespace", - "resourceVersion": "37205", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-grpc-implicit-grpc", - "uid": "1711710b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56263", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-removeresponseheaders-grpc", + "uid": "636c5ce7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.215.110", + "clusterIP": "10.106.105.182", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8136 + "targetPort": 8120 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8499 + "targetPort": 8483 } ], "selector": { @@ -2915,34 +2917,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-zoo-bar\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-zoo-bar/\nservice: http://plain-simplemapping-http-addresponseheaders-zoo-bar-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-zoo-bar\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-zoo-bar/\\nservice: http://plain-simplemapping-http-addresponseheaders-zoo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-zoo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8092},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8455}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe/\nservice: http://plain-simplemapping-http-addrequestheaders-xoo-dwe-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-http-addrequestheaders-xoo-dwe-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-xoo-dwe-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8088},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8451}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addresponseheaders-zoo-bar-http", + "name": "plain-simplemapping-http-addrequestheaders-xoo-dwe-http", "namespace": "plain-namespace", - "resourceVersion": "37025", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-zoo-bar-http", - "uid": "14ad67d8-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56135", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-xoo-dwe-http", + "uid": "61d20cc7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.245.239", + "clusterIP": "10.97.126.76", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8092 + "targetPort": 8088 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8455 + "targetPort": 8451 } ], "selector": { @@ -2960,34 +2962,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-10\nprefix: /CanaryDiffMapping-HTTP-10/\nservice: http://plain-canarydiffmapping-http-10-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-10\\nprefix: /CanaryDiffMapping-HTTP-10/\\nservice: http://plain-canarydiffmapping-http-10-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-10-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8157},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8520}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-UseWebsocket\nprefix: /SimpleMapping-HTTP-UseWebsocket/\nservice: http://plain-simplemapping-http-usewebsocket-http.plain-namespace\nambassador_id: plain\nuse_websocket: true\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-UseWebsocket\\nprefix: /SimpleMapping-HTTP-UseWebsocket/\\nservice: http://plain-simplemapping-http-usewebsocket-http.plain-namespace\\nambassador_id: plain\\nuse_websocket: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-usewebsocket-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8095},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8458}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-10-http", + "name": "plain-simplemapping-http-usewebsocket-http", "namespace": "plain-namespace", - "resourceVersion": "37291", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-10-http", - "uid": "18b4bf1d-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56162", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-usewebsocket-http", + "uid": "622b569f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.15.10", + "clusterIP": "10.102.118.252", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8157 + "targetPort": 8095 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8520 + "targetPort": 8458 } ], "selector": { @@ -3005,34 +3007,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: HostHeaderMapping-GRPC\nprefix: /HostHeaderMapping-GRPC/\nservice: http://plain-hostheadermapping-grpc-grpc.plain-namespace\nhost: inspector.external\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: HostHeaderMapping-GRPC\\nprefix: /HostHeaderMapping-GRPC/\\nservice: http://plain-hostheadermapping-grpc-grpc.plain-namespace\\nhost: inspector.external\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8129},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8492}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-HTTP-IMPLICIT\nprefix: /TLSOrigination-HTTP-IMPLICIT/\nservice: https://plain-tlsorigination-http-implicit-http.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-HTTP-IMPLICIT\\nprefix: /TLSOrigination-HTTP-IMPLICIT/\\nservice: https://plain-tlsorigination-http-implicit-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-http-implicit-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8134},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8497}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-hostheadermapping-grpc-grpc", + "name": "plain-tlsorigination-http-implicit-http", "namespace": "plain-namespace", - "resourceVersion": "37179", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermapping-grpc-grpc", - "uid": "16bf1474-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56324", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-http-implicit-http", + "uid": "6453f0da-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.70.157", + "clusterIP": "10.110.219.64", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8129 + "targetPort": 8134 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8492 + "targetPort": 8497 } ], "selector": { @@ -3050,34 +3052,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu/\nservice: http://plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8108},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8471}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddRespHeadersMapping-HTTP\nprefix: /AddRespHeadersMapping-HTTP/\nservice: http://httpbin.org\nadd_response_headers:\n koo:\n append: False\n value: KooK\n zoo:\n append: True\n value: ZooZ\n test:\n value: boo\n foo: Foo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddRespHeadersMapping-HTTP\\nprefix: /AddRespHeadersMapping-HTTP/\\nservice: http://httpbin.org\\nadd_response_headers:\\n koo:\\n append: False\\n value: KooK\\n zoo:\\n append: True\\n value: ZooZ\\n test:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addrespheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8171},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8534}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc", + "name": "plain-addrespheadersmapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37091", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-aoo-tyu-grpc", - "uid": "1588ad2c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56463", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addrespheadersmapping-http-http", + "uid": "66afa2dd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.101.168", + "clusterIP": "10.108.212.37", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8108 + "targetPort": 8171 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8471 + "targetPort": 8534 } ], "selector": { @@ -3095,34 +3097,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu/\nservice: http://plain-simplemapping-http-addrequestheaders-aoo-tyu-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-http-addrequestheaders-aoo-tyu-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-aoo-tyu-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8089},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8452}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-50\nprefix: /CanaryDiffMapping-HTTP-50/\nservice: http://plain-canarydiffmapping-http-50-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-50\\nprefix: /CanaryDiffMapping-HTTP-50/\\nservice: http://plain-canarydiffmapping-http-50-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-50-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8159},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8522}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addrequestheaders-aoo-tyu-http", + "name": "plain-canarydiffmapping-http-50-http", "namespace": "plain-namespace", - "resourceVersion": "37012", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-aoo-tyu-http", - "uid": "147b4274-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56419", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-50-http", + "uid": "65ed0c3a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.250.1", + "clusterIP": "10.108.12.140", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8089 + "targetPort": 8159 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8452 + "targetPort": 8522 } ], "selector": { @@ -3140,34 +3142,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu/\nservice: http://plain-simplemapping-http-addresponseheaders-aoo-tyu-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-http-addresponseheaders-aoo-tyu-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-aoo-tyu-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8094},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8457}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-0-canary\nprefix: /CanaryMapping-HTTP-0/\nservice: http://plain-canarymapping-http-0-http-canary.plain-namespace\nweight: 0\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-0-canary\\nprefix: /CanaryMapping-HTTP-0/\\nservice: http://plain-canarymapping-http-0-http-canary.plain-namespace\\nweight: 0\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-0-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8140},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8503}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addresponseheaders-aoo-tyu-http", + "name": "plain-canarymapping-http-0-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37032", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-aoo-tyu-http", - "uid": "14c85c43-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56347", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-0-http-canary", + "uid": "64a1d564-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.132.211", + "clusterIP": "10.99.72.0", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8094 + "targetPort": 8140 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8457 + "targetPort": 8503 } ], "selector": { @@ -3185,34 +3187,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-100-canary\nprefix: /CanaryDiffMapping-GRPC-100/\nservice: http://plain-canarydiffmapping-grpc-100-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 100\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-100-canary\\nprefix: /CanaryDiffMapping-GRPC-100/\\nservice: http://plain-canarydiffmapping-grpc-100-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-100-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8170},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8533}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-moo-arf\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-moo-arf/\nservice: http://plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"moo\": \"arf\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-moo-arf\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-moo-arf/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8110},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8473}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-100-grpc-canary", + "name": "plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc", "namespace": "plain-namespace", - "resourceVersion": "37342", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-100-grpc-canary", - "uid": "19b0887b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56225", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc", + "uid": "62f77b8b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.190.89", + "clusterIP": "10.105.66.135", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8170 + "targetPort": 8110 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8533 + "targetPort": 8473 } ], "selector": { @@ -3230,34 +3232,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-50-canary\nprefix: /CanaryDiffMapping-GRPC-50/\nservice: http://plain-canarydiffmapping-grpc-50-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 50\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-50-canary\\nprefix: /CanaryDiffMapping-GRPC-50/\\nservice: http://plain-canarydiffmapping-grpc-50-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-50-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8168},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8531}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe/\nservice: http://plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8112},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8475}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-50-grpc-canary", + "name": "plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc", "namespace": "plain-namespace", - "resourceVersion": "37335", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-50-grpc-canary", - "uid": "198df92b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56233", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc", + "uid": "630f4486-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.32.167", + "clusterIP": "10.105.159.16", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8168 + "targetPort": 8112 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8531 + "targetPort": 8475 } ], "selector": { @@ -3275,34 +3277,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-100-canary\nprefix: /CanaryDiffMapping-HTTP-100/\nservice: http://plain-canarydiffmapping-http-100-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 100\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-100-canary\\nprefix: /CanaryDiffMapping-HTTP-100/\\nservice: http://plain-canarydiffmapping-http-100-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-100-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8162},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8525}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-CORS\nprefix: /SimpleMapping-GRPC-CORS/\nservice: http://plain-simplemapping-grpc-cors-grpc.plain-namespace\nambassador_id: plain\ncors: {origins: \"*\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-CORS\\nprefix: /SimpleMapping-GRPC-CORS/\\nservice: http://plain-simplemapping-grpc-cors-grpc.plain-namespace\\nambassador_id: plain\\ncors: {origins: \\\"*\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-cors-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8115},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8478}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-100-http-canary", + "name": "plain-simplemapping-grpc-cors-grpc", "namespace": "plain-namespace", - "resourceVersion": "37312", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-100-http-canary", - "uid": "19158588-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56246", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-cors-grpc", + "uid": "633aa325-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.224.62", + "clusterIP": "10.99.135.149", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8162 + "targetPort": 8115 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8525 + "targetPort": 8478 } ], "selector": { @@ -3320,41 +3322,44 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-50-canary\nprefix: /CanaryMapping-HTTP-50/\nservice: http://plain-canarymapping-http-50-http-canary.plain-namespace\nweight: 50\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-50-canary\\nprefix: /CanaryMapping-HTTP-50/\\nservice: http://plain-canarymapping-http-50-http-canary.plain-namespace\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-50-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8144},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8507}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"plain\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-http-50-http-canary", + "name": "plain", "namespace": "plain-namespace", - "resourceVersion": "37234", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-50-http-canary", - "uid": "1776ca0a-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56093", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain", + "uid": "61515bfd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.11.213", + "clusterIP": "10.96.216.10", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 31130, "port": 80, "protocol": "TCP", - "targetPort": 8144 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30281, "port": 443, "protocol": "TCP", - "targetPort": 8507 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-plain-namespace" + "service": "plain" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -3365,34 +3370,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HostRedirectMapping\nprefix: /HostRedirectMapping/\nservice: foobar.com\nhost_redirect: true\nambassador_id: plain\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: HostRedirectMapping-2\nprefix: /HostRedirectMapping-2/\ncase_sensitive: false\nservice: foobar.com\nhost_redirect: true\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HostRedirectMapping\\nprefix: /HostRedirectMapping/\\nservice: foobar.com\\nhost_redirect: true\\nambassador_id: plain\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HostRedirectMapping-2\\nprefix: /HostRedirectMapping-2/\\ncase_sensitive: false\\nservice: foobar.com\\nhost_redirect: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostredirectmapping-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8138},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8501}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-HTTP-10-canary\nprefix: /CanaryMapping-HTTP-10/\nservice: http://plain-canarymapping-http-10-http-canary.plain-namespace\nweight: 10\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-HTTP-10-canary\\nprefix: /CanaryMapping-HTTP-10/\\nservice: http://plain-canarymapping-http-10-http-canary.plain-namespace\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-http-10-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8142},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8505}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-hostredirectmapping-http", + "name": "plain-canarymapping-http-10-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37212", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostredirectmapping-http", - "uid": "1726afe2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56354", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-http-10-http-canary", + "uid": "64c157c1-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.213.39", + "clusterIP": "10.107.238.248", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8138 + "targetPort": 8142 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8501 + "targetPort": 8505 } ], "selector": { @@ -3410,34 +3415,33 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-zoo-bar\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-zoo-bar/\nservice: http://plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-zoo-bar\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-zoo-bar/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8106},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8469}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermappingingress-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8126},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8489}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc", + "name": "plain-hostheadermappingingress-http-http", "namespace": "plain-namespace", - "resourceVersion": "37083", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc", - "uid": "156d1d8d-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56292", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermappingingress-http-http", + "uid": "63d467dc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.76.232", + "clusterIP": "10.111.130.228", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8106 + "targetPort": 8126 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8469 + "targetPort": 8489 } ], "selector": { @@ -3455,34 +3459,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-foo-bar\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-foo-bar/\nservice: http://plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"foo\": \"bar\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-foo-bar\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-foo-bar/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8109},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8472}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-zoo-bar\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-zoo-bar/\nservice: http://plain-simplemapping-http-addrequestheaders-zoo-bar-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-zoo-bar\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-zoo-bar/\\nservice: http://plain-simplemapping-http-addrequestheaders-zoo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-zoo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8087},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8450}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc", + "name": "plain-simplemapping-http-addrequestheaders-zoo-bar-http", "namespace": "plain-namespace", - "resourceVersion": "37097", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc", - "uid": "159606c0-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56131", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-zoo-bar-http", + "uid": "61c604f3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.157.32", + "clusterIP": "10.98.191.112", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8109 + "targetPort": 8087 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8472 + "targetPort": 8450 } ], "selector": { @@ -3500,34 +3504,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-moo-arf\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-moo-arf/\nservice: http://plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"moo\": \"arf\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-moo-arf\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-moo-arf/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8110},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8473}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-GRPC-IMPLICIT\nprefix: /TLSOrigination-GRPC-IMPLICIT/\nservice: https://plain-tlsorigination-grpc-implicit-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-GRPC-IMPLICIT\\nprefix: /TLSOrigination-GRPC-IMPLICIT/\\nservice: https://plain-tlsorigination-grpc-implicit-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-grpc-implicit-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8136},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8499}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc", + "name": "plain-tlsorigination-grpc-implicit-grpc", "namespace": "plain-namespace", - "resourceVersion": "37101", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-moo-arf-grpc", - "uid": "15a2bdea-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56333", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-grpc-implicit-grpc", + "uid": "646c7eb3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.215.85", + "clusterIP": "10.111.156.104", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8110 + "targetPort": 8136 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8473 + "targetPort": 8499 } ], "selector": { @@ -3545,34 +3549,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-10\nprefix: /CanaryDiffMapping-GRPC-10/\nservice: http://plain-canarydiffmapping-grpc-10-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-10\\nprefix: /CanaryDiffMapping-GRPC-10/\\nservice: http://plain-canarydiffmapping-grpc-10-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-10-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8165},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8528}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-10\nprefix: /CanaryDiffMapping-HTTP-10/\nservice: http://plain-canarydiffmapping-http-10-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-10\\nprefix: /CanaryDiffMapping-HTTP-10/\\nservice: http://plain-canarydiffmapping-http-10-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-10-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8157},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8520}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:20Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-10-grpc", + "name": "plain-canarydiffmapping-http-10-http", "namespace": "plain-namespace", - "resourceVersion": "37324", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-10-grpc", - "uid": "195446e0-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56412", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-10-http", + "uid": "65ce110c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.128.76", + "clusterIP": "10.110.176.247", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8165 + "targetPort": 8157 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8528 + "targetPort": 8520 } ], "selector": { @@ -3590,34 +3594,33 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC\nprefix: /SimpleMapping-GRPC/\nservice: http://plain-simplemapping-grpc-grpc.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC\\nprefix: /SimpleMapping-GRPC/\\nservice: http://plain-simplemapping-grpc-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8103},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8466}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostheadermappingingress-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8127},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8490}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-grpc", + "name": "plain-hostheadermappingingress-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37070", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-grpc", - "uid": "154b147e-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56297", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostheadermappingingress-grpc-grpc", + "uid": "63e6b4dd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.70.189", + "clusterIP": "10.106.7.192", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8103 + "targetPort": 8127 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8466 + "targetPort": 8490 } ], "selector": { @@ -3635,34 +3638,33 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-zoo-bar\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-zoo-bar/\nservice: http://plain-simplemapping-http-addrequestheaders-zoo-bar-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-zoo-bar\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-zoo-bar/\\nservice: http://plain-simplemapping-http-addrequestheaders-zoo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-zoo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8087},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8450}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simpleingresswithannotations-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8125},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8488}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:17Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addrequestheaders-zoo-bar-http", + "name": "plain-simpleingresswithannotations-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37005", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-zoo-bar-http", - "uid": "146071bd-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56287", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simpleingresswithannotations-grpc-grpc", + "uid": "63bf17b1-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.188.232", + "clusterIP": "10.98.196.72", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8087 + "targetPort": 8125 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8450 + "targetPort": 8488 } ], "selector": { @@ -3680,34 +3682,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-CORS\nprefix: /SimpleMapping-HTTP-CORS/\nservice: http://plain-simplemapping-http-cors-http.plain-namespace\nambassador_id: plain\ncors: {origins: \"*\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-CORS\\nprefix: /SimpleMapping-HTTP-CORS/\\nservice: http://plain-simplemapping-http-cors-http.plain-namespace\\nambassador_id: plain\\ncors: {origins: \\\"*\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-cors-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8096},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8459}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-100-canary\nprefix: /CanaryDiffMapping-HTTP-100/\nservice: http://plain-canarydiffmapping-http-100-http-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 100\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-100-canary\\nprefix: /CanaryDiffMapping-HTTP-100/\\nservice: http://plain-canarydiffmapping-http-100-http-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 100\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-100-http-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8162},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8525}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-cors-http", + "name": "plain-canarydiffmapping-http-100-http-canary", "namespace": "plain-namespace", - "resourceVersion": "37041", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-cors-http", - "uid": "14e144ef-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56431", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-100-http-canary", + "uid": "661ce6cf-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.96.30", + "clusterIP": "10.98.135.68", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8096 + "targetPort": 8162 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8459 + "targetPort": 8525 } ], "selector": { @@ -3725,34 +3727,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: WebSocketMapping-HTTP\nprefix: /WebSocketMapping-HTTP/\nservice: echo.websocket.org:80\nhost_rewrite: echo.websocket.org\nuse_websocket: true\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: WebSocketMapping-HTTP\\nprefix: /WebSocketMapping-HTTP/\\nservice: echo.websocket.org:80\\nhost_rewrite: echo.websocket.org\\nuse_websocket: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-websocketmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8132},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8495}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-0\nprefix: /CanaryMapping-GRPC-0/\nservice: http://plain-canarymapping-grpc-0-grpc.plain-namespace\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-0\\nprefix: /CanaryMapping-GRPC-0/\\nservice: http://plain-canarymapping-grpc-0-grpc.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-0-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8147},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8510}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:19Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-websocketmapping-http-http", + "name": "plain-canarymapping-grpc-0-grpc", "namespace": "plain-namespace", - "resourceVersion": "37191", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-websocketmapping-http-http", - "uid": "16e0a17e-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56374", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-0-grpc", + "uid": "650dc497-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.169.73", + "clusterIP": "10.97.33.195", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8132 + "targetPort": 8147 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8495 + "targetPort": 8510 } ], "selector": { @@ -3770,34 +3772,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe/\nservice: http://plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8112},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8475}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: WebSocketMapping-GRPC\nprefix: /WebSocketMapping-GRPC/\nservice: echo.websocket.org:80\nhost_rewrite: echo.websocket.org\nuse_websocket: true\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: WebSocketMapping-GRPC\\nprefix: /WebSocketMapping-GRPC/\\nservice: echo.websocket.org:80\\nhost_rewrite: echo.websocket.org\\nuse_websocket: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-websocketmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8133},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8496}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc", + "name": "plain-websocketmapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37108", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-xoo-dwe-grpc", - "uid": "15ba012f-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56320", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-websocketmapping-grpc-grpc", + "uid": "644954e2-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.37.245", + "clusterIP": "10.106.99.216", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8112 + "targetPort": 8133 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8475 + "targetPort": 8496 } ], "selector": { @@ -3815,37 +3817,41 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\",\"service\":\"plain-admin\"},\"name\":\"plain-admin\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"plain-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"plain\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-10\nprefix: /CanaryDiffMapping-GRPC-10/\nservice: http://plain-canarydiffmapping-grpc-10-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-10\\nprefix: /CanaryDiffMapping-GRPC-10/\\nservice: http://plain-canarydiffmapping-grpc-10-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-10-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8165},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8528}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:21Z", "labels": { "kat-ambassador-id": "plain", - "scope": "AmbassadorTest", - "service": "plain-admin" + "scope": "AmbassadorTest" }, - "name": "plain-admin", + "name": "plain-canarydiffmapping-grpc-10-grpc", "namespace": "plain-namespace", - "resourceVersion": "36969", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-admin", - "uid": "13eb68aa-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56441", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-10-grpc", + "uid": "664a1240-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.205.235", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.99.250.146", "ports": [ { - "name": "plain-admin", - "nodePort": 32687, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8165 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8528 } ], "selector": { - "service": "plain" + "backend": "superpod-plain-namespace" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -3856,34 +3862,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: RemoveReqHeadersMapping-HTTP\nprefix: /RemoveReqHeadersMapping-HTTP/\nservice: http://httpbin.org\nremove_request_headers:\n- zoo\n- aoo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: RemoveReqHeadersMapping-HTTP\\nprefix: /RemoveReqHeadersMapping-HTTP/\\nservice: http://httpbin.org\\nremove_request_headers:\\n- zoo\\n- aoo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-removereqheadersmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8173},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8536}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-zoo-bar\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-zoo-bar/\nservice: http://plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-zoo-bar\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-zoo-bar/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8106},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8469}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-removereqheadersmapping-http-http", + "name": "plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc", "namespace": "plain-namespace", - "resourceVersion": "37355", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-removereqheadersmapping-http-http", - "uid": "19e2bc00-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56209", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-zoo-bar-grpc", + "uid": "62c5fb69-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.241.169", + "clusterIP": "10.104.225.42", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8173 + "targetPort": 8106 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8536 + "targetPort": 8469 } ], "selector": { @@ -3901,34 +3907,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-foo-bar\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-foo-bar/\nservice: http://plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-foo-bar\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-foo-bar/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8104},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8467}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-all\nprefix: /SimpleMapping-HTTP-all/\nservice: http://plain-simplemapping-http-all-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\nadd_response_headers: {\"foo\": \"bar\"}\nuse_websocket: true\ncors: {origins: \"*\"}\ncase_sensitive: false\nauto_host_rewrite: true\nrewrite: /foo\nremove_response_headers: x-envoy-upstream-service-time\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-all\\nprefix: /SimpleMapping-HTTP-all/\\nservice: http://plain-simplemapping-http-all-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\nuse_websocket: true\\ncors: {origins: \\\"*\\\"}\\ncase_sensitive: false\\nauto_host_rewrite: true\\nrewrite: /foo\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-all-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8102},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8465}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc", + "name": "plain-simplemapping-http-all-http", "namespace": "plain-namespace", - "resourceVersion": "37074", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-foo-bar-grpc", - "uid": "1556efc1-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56192", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-all-http", + "uid": "628b61ec-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.53.152", + "clusterIP": "10.102.89.138", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8104 + "targetPort": 8102 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8467 + "targetPort": 8465 } ], "selector": { @@ -3946,34 +3952,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe/\nservice: http://plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"xoo\": {\"append\": false, \"value\": \"dwe\"}}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-xoo-dwe/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"xoo\\\": {\\\"append\\\": false, \\\"value\\\": \\\"dwe\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8107},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8470}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-CORS\nprefix: /SimpleMapping-HTTP-CORS/\nservice: http://plain-simplemapping-http-cors-http.plain-namespace\nambassador_id: plain\ncors: {origins: \"*\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-CORS\\nprefix: /SimpleMapping-HTTP-CORS/\\nservice: http://plain-simplemapping-http-cors-http.plain-namespace\\nambassador_id: plain\\ncors: {origins: \\\"*\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-cors-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8096},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8459}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc", + "name": "plain-simplemapping-http-cors-http", "namespace": "plain-namespace", - "resourceVersion": "37088", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-xoo-dwe-grpc", - "uid": "15790ed2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56166", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-cors-http", + "uid": "6235fe1b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.128.180", + "clusterIP": "10.107.235.172", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8107 + "targetPort": 8096 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8470 + "targetPort": 8459 } ], "selector": { @@ -3991,34 +3997,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-moo-arf\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-moo-arf/\nservice: http://plain-simplemapping-http-addresponseheaders-moo-arf-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"moo\": \"arf\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-moo-arf\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-moo-arf/\\nservice: http://plain-simplemapping-http-addresponseheaders-moo-arf-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-moo-arf-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8091},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8454}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-Rewrite-SLASH-foo\nprefix: /SimpleMapping-HTTP-Rewrite-SLASH-foo/\nservice: http://plain-simplemapping-http-rewrite-slash-foo-http.plain-namespace\nambassador_id: plain\nrewrite: /foo\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-Rewrite-SLASH-foo\\nprefix: /SimpleMapping-HTTP-Rewrite-SLASH-foo/\\nservice: http://plain-simplemapping-http-rewrite-slash-foo-http.plain-namespace\\nambassador_id: plain\\nrewrite: /foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-rewrite-slash-foo-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8099},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8462}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:51Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addresponseheaders-moo-arf-http", + "name": "plain-simplemapping-http-rewrite-slash-foo-http", "namespace": "plain-namespace", - "resourceVersion": "37019", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-moo-arf-http", - "uid": "14972f0d-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56179", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-rewrite-slash-foo-http", + "uid": "626b18c5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.221.20", + "clusterIP": "10.99.9.214", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8091 + "targetPort": 8099 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8454 + "targetPort": 8462 } ], "selector": { @@ -4036,34 +4042,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: InvalidPortMapping-GRPC\nprefix: /InvalidPortMapping-GRPC/\nservice: http://plain-invalidportmapping-grpc-grpc.plain-namespace:80.invalid\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: InvalidPortMapping-GRPC\\nprefix: /InvalidPortMapping-GRPC/\\nservice: http://plain-invalidportmapping-grpc-grpc.plain-namespace:80.invalid\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-invalidportmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8131},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8494}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-GRPC-EXPLICIT\nprefix: /TLSOrigination-GRPC-EXPLICIT/\nservice: plain-tlsorigination-grpc-explicit-grpc.plain-namespace\ntls: true\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-GRPC-EXPLICIT\\nprefix: /TLSOrigination-GRPC-EXPLICIT/\\nservice: plain-tlsorigination-grpc-explicit-grpc.plain-namespace\\ntls: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-grpc-explicit-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8137},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8500}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-invalidportmapping-grpc-grpc", + "name": "plain-tlsorigination-grpc-explicit-grpc", "namespace": "plain-namespace", - "resourceVersion": "37187", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-invalidportmapping-grpc-grpc", - "uid": "16d4d217-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56336", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-grpc-explicit-grpc", + "uid": "64780a67-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.246.141", + "clusterIP": "10.111.13.57", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8131 + "targetPort": 8137 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8494 + "targetPort": 8500 } ], "selector": { @@ -4081,34 +4087,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-HTTP-100\nprefix: /CanaryDiffMapping-HTTP-100/\nservice: http://plain-canarydiffmapping-http-100-http.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-HTTP-100\\nprefix: /CanaryDiffMapping-HTTP-100/\\nservice: http://plain-canarydiffmapping-http-100-http.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-http-100-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8161},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8524}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-HTTP-EXPLICIT\nprefix: /TLSOrigination-HTTP-EXPLICIT/\nservice: plain-tlsorigination-http-explicit-http.plain-namespace\ntls: true\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-HTTP-EXPLICIT\\nprefix: /TLSOrigination-HTTP-EXPLICIT/\\nservice: plain-tlsorigination-http-explicit-http.plain-namespace\\ntls: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-http-explicit-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8135},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8498}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:58Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-http-100-http", + "name": "plain-tlsorigination-http-explicit-http", "namespace": "plain-namespace", - "resourceVersion": "37308", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-http-100-http", - "uid": "19047048-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56329", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-http-explicit-http", + "uid": "645ef449-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.217.107", + "clusterIP": "10.106.142.0", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8161 + "targetPort": 8135 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8524 + "targetPort": 8498 } ], "selector": { @@ -4126,34 +4132,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryMapping-GRPC-10-canary\nprefix: /CanaryMapping-GRPC-10/\nservice: http://plain-canarymapping-grpc-10-grpc-canary.plain-namespace\nweight: 10\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryMapping-GRPC-10-canary\\nprefix: /CanaryMapping-GRPC-10/\\nservice: http://plain-canarymapping-grpc-10-grpc-canary.plain-namespace\\nweight: 10\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarymapping-grpc-10-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8150},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8513}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddReqHeadersMapping-GRPC\nprefix: /AddReqHeadersMapping-GRPC/\nservice: http://plain-addreqheadersmapping-grpc-grpc.plain-namespace\nadd_request_headers:\n zoo:\n append: False\n value: Zoo\n aoo:\n append: True\n value: aoo\n boo:\n value: boo\n foo: Foo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddReqHeadersMapping-GRPC\\nprefix: /AddReqHeadersMapping-GRPC/\\nservice: http://plain-addreqheadersmapping-grpc-grpc.plain-namespace\\nadd_request_headers:\\n zoo:\\n append: False\\n value: Zoo\\n aoo:\\n append: True\\n value: aoo\\n boo:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addreqheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8176},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8539}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:56Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarymapping-grpc-10-grpc-canary", + "name": "plain-addreqheadersmapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37256", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarymapping-grpc-10-grpc-canary", - "uid": "17bb3960-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56482", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addreqheadersmapping-grpc-grpc", + "uid": "67118daa-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.156.120", + "clusterIP": "10.102.145.125", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8150 + "targetPort": 8176 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8513 + "targetPort": 8539 } ], "selector": { @@ -4171,34 +4177,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: RemoveReqHeadersMapping-GRPC\nprefix: /RemoveReqHeadersMapping-GRPC/\nservice: http://httpbin.org\nremove_request_headers:\n- zoo\n- aoo\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: RemoveReqHeadersMapping-GRPC\\nprefix: /RemoveReqHeadersMapping-GRPC/\\nservice: http://httpbin.org\\nremove_request_headers:\\n- zoo\\n- aoo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-removereqheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8174},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8537}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: InvalidPortMapping-HTTP\nprefix: /InvalidPortMapping-HTTP/\nservice: http://plain-invalidportmapping-http-http.plain-namespace:80.invalid\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: InvalidPortMapping-HTTP\\nprefix: /InvalidPortMapping-HTTP/\\nservice: http://plain-invalidportmapping-http-http.plain-namespace:80.invalid\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-invalidportmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8130},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8493}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:00Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-removereqheadersmapping-grpc-grpc", + "name": "plain-invalidportmapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37358", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-removereqheadersmapping-grpc-grpc", - "uid": "19f007d5-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56309", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-invalidportmapping-http-http", + "uid": "6427310e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.77.247", + "clusterIP": "10.97.252.161", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8174 + "targetPort": 8130 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8537 + "targetPort": 8493 } ], "selector": { @@ -4216,34 +4222,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-CaseSensitive\nprefix: /SimpleMapping-GRPC-CaseSensitive/\nservice: http://plain-simplemapping-grpc-casesensitive-grpc.plain-namespace\nambassador_id: plain\ncase_sensitive: false\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-CaseSensitive\\nprefix: /SimpleMapping-GRPC-CaseSensitive/\\nservice: http://plain-simplemapping-grpc-casesensitive-grpc.plain-namespace\\nambassador_id: plain\\ncase_sensitive: false\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-casesensitive-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8116},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8479}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-moo-arf\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-moo-arf/\nservice: http://plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"moo\": \"arf\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-moo-arf\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-moo-arf/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8105},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8468}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-casesensitive-grpc", + "name": "plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc", "namespace": "plain-namespace", - "resourceVersion": "37122", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-casesensitive-grpc", - "uid": "15e66327-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56204", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc", + "uid": "62b979ee-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.170.72", + "clusterIP": "10.97.117.12", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8116 + "targetPort": 8105 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8479 + "targetPort": 8468 } ], "selector": { @@ -4261,34 +4267,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-RemoveResponseHeaders\nprefix: /SimpleMapping-GRPC-RemoveResponseHeaders/\nservice: http://plain-simplemapping-grpc-removeresponseheaders-grpc.plain-namespace\nambassador_id: plain\nremove_response_headers: x-envoy-upstream-service-time\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-RemoveResponseHeaders\\nprefix: /SimpleMapping-GRPC-RemoveResponseHeaders/\\nservice: http://plain-simplemapping-grpc-removeresponseheaders-grpc.plain-namespace\\nambassador_id: plain\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-removeresponseheaders-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8120},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8483}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-zoo-bar\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-zoo-bar/\nservice: http://plain-simplemapping-http-addresponseheaders-zoo-bar-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"zoo\": {\"append\": true, \"value\": \"bar\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-zoo-bar\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-zoo-bar/\\nservice: http://plain-simplemapping-http-addresponseheaders-zoo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"zoo\\\": {\\\"append\\\": true, \\\"value\\\": \\\"bar\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-zoo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8092},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8455}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-removeresponseheaders-grpc", + "name": "plain-simplemapping-http-addresponseheaders-zoo-bar-http", "namespace": "plain-namespace", - "resourceVersion": "37138", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-removeresponseheaders-grpc", - "uid": "1621e23b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56152", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-zoo-bar-http", + "uid": "620a8927-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.76.173", + "clusterIP": "10.98.87.223", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8120 + "targetPort": 8092 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8483 + "targetPort": 8455 } ], "selector": { @@ -4306,34 +4312,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-100\nprefix: /CanaryDiffMapping-GRPC-100/\nservice: http://plain-canarydiffmapping-grpc-100-grpc.plain-namespace\nhost_rewrite: canary.1.example.com\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-100\\nprefix: /CanaryDiffMapping-GRPC-100/\\nservice: http://plain-canarydiffmapping-grpc-100-grpc.plain-namespace\\nhost_rewrite: canary.1.example.com\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-100-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8169},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8532}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-RemoveResponseHeaders\nprefix: /SimpleMapping-HTTP-RemoveResponseHeaders/\nservice: http://plain-simplemapping-http-removeresponseheaders-http.plain-namespace\nambassador_id: plain\nremove_response_headers: x-envoy-upstream-service-time\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-RemoveResponseHeaders\\nprefix: /SimpleMapping-HTTP-RemoveResponseHeaders/\\nservice: http://plain-simplemapping-http-removeresponseheaders-http.plain-namespace\\nambassador_id: plain\\nremove_response_headers: x-envoy-upstream-service-time\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-removeresponseheaders-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8101},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8464}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:59Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-canarydiffmapping-grpc-100-grpc", + "name": "plain-simplemapping-http-removeresponseheaders-http", "namespace": "plain-namespace", - "resourceVersion": "37338", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-100-grpc", - "uid": "199a0e08-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56188", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-removeresponseheaders-http", + "uid": "627fdddb-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.105.224", + "clusterIP": "10.102.227.103", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8169 + "targetPort": 8101 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8532 + "targetPort": 8464 } ], "selector": { @@ -4351,33 +4357,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simpleingresswithannotations-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8124},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8487}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: WebSocketMapping-HTTP\nprefix: /WebSocketMapping-HTTP/\nservice: echo.websocket.org:80\nhost_rewrite: echo.websocket.org\nuse_websocket: true\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: WebSocketMapping-HTTP\\nprefix: /WebSocketMapping-HTTP/\\nservice: echo.websocket.org:80\\nhost_rewrite: echo.websocket.org\\nuse_websocket: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-websocketmapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8132},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8495}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:54Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simpleingresswithannotations-http-http", + "name": "plain-websocketmapping-http-http", "namespace": "plain-namespace", - "resourceVersion": "37157", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simpleingresswithannotations-http-http", - "uid": "1669ee26-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56317", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-websocketmapping-http-http", + "uid": "643d7fba-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.91.50", + "clusterIP": "10.109.156.34", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8124 + "targetPort": 8132 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8487 + "targetPort": 8495 } ], "selector": { @@ -4395,34 +4402,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddRequestHeaders-moo-arf\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-moo-arf/\nservice: http://plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"moo\": \"arf\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddRequestHeaders-moo-arf\\nprefix: /SimpleMapping-GRPC-AddRequestHeaders-moo-arf/\\nservice: http://plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8105},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8468}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: AddRespHeadersMapping-GRPC\nprefix: /AddRespHeadersMapping-GRPC/\nservice: http://httpbin.org\nadd_response_headers:\n koo:\n append: False\n value: KooK\n zoo:\n append: True\n value: ZooZ\n test:\n value: boo\n foo: Foo\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: AddRespHeadersMapping-GRPC\\nprefix: /AddRespHeadersMapping-GRPC/\\nservice: http://httpbin.org\\nadd_response_headers:\\n koo:\\n append: False\\n value: KooK\\n zoo:\\n append: True\\n value: ZooZ\\n test:\\n value: boo\\n foo: Foo\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-addrespheadersmapping-grpc-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8172},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8535}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc", + "name": "plain-addrespheadersmapping-grpc-grpc", "namespace": "plain-namespace", - "resourceVersion": "37079", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addrequestheaders-moo-arf-grpc", - "uid": "15617297-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56466", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-addrespheadersmapping-grpc-grpc", + "uid": "66bdeedc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.2.107", + "clusterIP": "10.111.37.22", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8105 + "targetPort": 8172 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8468 + "targetPort": 8535 } ], "selector": { @@ -4440,41 +4447,37 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-UseWebsocket\nprefix: /SimpleMapping-GRPC-UseWebsocket/\nservice: http://plain-simplemapping-grpc-usewebsocket-grpc.plain-namespace\nambassador_id: plain\nuse_websocket: true\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-UseWebsocket\\nprefix: /SimpleMapping-GRPC-UseWebsocket/\\nservice: http://plain-simplemapping-grpc-usewebsocket-grpc.plain-namespace\\nambassador_id: plain\\nuse_websocket: true\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-usewebsocket-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8114},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8477}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\",\"service\":\"plain-admin\"},\"name\":\"plain-admin\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"plain-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"plain\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:53Z", + "creationTimestamp": "2020-02-19T23:20:13Z", "labels": { "kat-ambassador-id": "plain", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "plain-admin" }, - "name": "plain-simplemapping-grpc-usewebsocket-grpc", + "name": "plain-admin", "namespace": "plain-namespace", - "resourceVersion": "37115", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-usewebsocket-grpc", - "uid": "15ce2159-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56098", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-admin", + "uid": "615d8ee2-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.98.51", + "clusterIP": "10.109.11.77", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8114 - }, - { - "name": "https", - "port": 443, + "name": "plain-admin", + "nodePort": 32654, + "port": 8877, "protocol": "TCP", - "targetPort": 8477 + "targetPort": 8877 } ], "selector": { - "backend": "superpod-plain-namespace" + "service": "plain" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -4485,34 +4488,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddRequestHeaders-foo-bar\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-foo-bar/\nservice: http://plain-simplemapping-http-addrequestheaders-foo-bar-http.plain-namespace\nambassador_id: plain\nadd_request_headers: {\"foo\": \"bar\"}\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddRequestHeaders-foo-bar\\nprefix: /SimpleMapping-HTTP-AddRequestHeaders-foo-bar/\\nservice: http://plain-simplemapping-http-addrequestheaders-foo-bar-http.plain-namespace\\nambassador_id: plain\\nadd_request_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addrequestheaders-foo-bar-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8085},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8448}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: CanaryDiffMapping-GRPC-50-canary\nprefix: /CanaryDiffMapping-GRPC-50/\nservice: http://plain-canarydiffmapping-grpc-50-grpc-canary.plain-namespace\nhost_rewrite: canary.2.example.com\nweight: 50\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: CanaryDiffMapping-GRPC-50-canary\\nprefix: /CanaryDiffMapping-GRPC-50/\\nservice: http://plain-canarydiffmapping-grpc-50-grpc-canary.plain-namespace\\nhost_rewrite: canary.2.example.com\\nweight: 50\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-canarydiffmapping-grpc-50-grpc-canary\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8168},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8531}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:22Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-addrequestheaders-foo-bar-http", + "name": "plain-canarydiffmapping-grpc-50-grpc-canary", "namespace": "plain-namespace", - "resourceVersion": "36998", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addrequestheaders-foo-bar-http", - "uid": "14470bd2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56452", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-canarydiffmapping-grpc-50-grpc-canary", + "uid": "66894400-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.142.47", + "clusterIP": "10.98.216.248", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8085 + "targetPort": 8168 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8448 + "targetPort": 8531 } ], "selector": { @@ -4530,34 +4533,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP\nprefix: /SimpleMapping-HTTP/\nservice: http://plain-simplemapping-http-http.plain-namespace\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP\\nprefix: /SimpleMapping-HTTP/\\nservice: http://plain-simplemapping-http-http.plain-namespace\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8084},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8447}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: HostRedirectMapping\nprefix: /HostRedirectMapping/\nservice: foobar.com\nhost_redirect: true\nambassador_id: plain\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: HostRedirectMapping-2\nprefix: /HostRedirectMapping-2/\ncase_sensitive: false\nservice: foobar.com\nhost_redirect: true\nambassador_id: plain\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HostRedirectMapping\\nprefix: /HostRedirectMapping/\\nservice: foobar.com\\nhost_redirect: true\\nambassador_id: plain\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: HostRedirectMapping-2\\nprefix: /HostRedirectMapping-2/\\ncase_sensitive: false\\nservice: foobar.com\\nhost_redirect: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-hostredirectmapping-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8138},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8501}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:18Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-http", + "name": "plain-hostredirectmapping-http", "namespace": "plain-namespace", - "resourceVersion": "36993", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-http", - "uid": "1435cf2b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56339", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-hostredirectmapping-http", + "uid": "6483160b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.243.155", + "clusterIP": "10.103.18.43", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8084 + "targetPort": 8138 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8447 + "targetPort": 8501 } ], "selector": { @@ -4575,34 +4578,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-Rewrite-foo\nprefix: /SimpleMapping-HTTP-Rewrite-foo/\nservice: http://plain-simplemapping-http-rewrite-foo-http.plain-namespace\nambassador_id: plain\nrewrite: foo\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-Rewrite-foo\\nprefix: /SimpleMapping-HTTP-Rewrite-foo/\\nservice: http://plain-simplemapping-http-rewrite-foo-http.plain-namespace\\nambassador_id: plain\\nrewrite: foo\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-rewrite-foo-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8100},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8463}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu/\nservice: http://plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"aoo\": {\"value\": \"tyu\"}}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-aoo-tyu/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"aoo\\\": {\\\"value\\\": \\\"tyu\\\"}}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8113},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8476}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:52Z", + "creationTimestamp": "2020-02-19T23:20:16Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-simplemapping-http-rewrite-foo-http", + "name": "plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc", "namespace": "plain-namespace", - "resourceVersion": "37059", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-rewrite-foo-http", - "uid": "15250dbd-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56238", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-aoo-tyu-grpc", + "uid": "6326d2ed-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.237.93", + "clusterIP": "10.103.232.56", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8100 + "targetPort": 8113 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8463 + "targetPort": 8476 } ], "selector": { @@ -4620,34 +4623,34 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSOrigination-HTTP-EXPLICIT\nprefix: /TLSOrigination-HTTP-EXPLICIT/\nservice: plain-tlsorigination-http-explicit-http.plain-namespace\ntls: true\nambassador_id: plain\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSOrigination-HTTP-EXPLICIT\\nprefix: /TLSOrigination-HTTP-EXPLICIT/\\nservice: plain-tlsorigination-http-explicit-http.plain-namespace\\ntls: true\\nambassador_id: plain\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-tlsorigination-http-explicit-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8135},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8498}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-GRPC-AddResponseHeaders-foo-bar\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-foo-bar/\nservice: http://plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"foo\": \"bar\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-GRPC-AddResponseHeaders-foo-bar\\nprefix: /SimpleMapping-GRPC-AddResponseHeaders-foo-bar/\\nservice: http://plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"foo\\\": \\\"bar\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8109},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8472}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:55Z", + "creationTimestamp": "2020-02-19T23:20:15Z", "labels": { "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain-tlsorigination-http-explicit-http", + "name": "plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc", "namespace": "plain-namespace", - "resourceVersion": "37201", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-tlsorigination-http-explicit-http", - "uid": "1701d1fa-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56220", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-grpc-addresponseheaders-foo-bar-grpc", + "uid": "62e73eef-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.172.86", + "clusterIP": "10.108.93.3", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8135 + "targetPort": 8109 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8498 + "targetPort": 8472 } ], "selector": { @@ -4665,44 +4668,41 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"plain\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SimpleMapping-HTTP-AddResponseHeaders-moo-arf\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-moo-arf/\nservice: http://plain-simplemapping-http-addresponseheaders-moo-arf-http.plain-namespace\nambassador_id: plain\nadd_response_headers: {\"moo\": \"arf\"}\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SimpleMapping-HTTP-AddResponseHeaders-moo-arf\\nprefix: /SimpleMapping-HTTP-AddResponseHeaders-moo-arf/\\nservice: http://plain-simplemapping-http-addresponseheaders-moo-arf-http.plain-namespace\\nambassador_id: plain\\nadd_response_headers: {\\\"moo\\\": \\\"arf\\\"}\\n\"},\"labels\":{\"kat-ambassador-id\":\"plain\",\"scope\":\"AmbassadorTest\"},\"name\":\"plain-simplemapping-http-addresponseheaders-moo-arf-http\",\"namespace\":\"plain-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8091},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8454}],\"selector\":{\"backend\":\"superpod-plain-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:50Z", + "creationTimestamp": "2020-02-19T23:20:14Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "plain", "scope": "AmbassadorTest" }, - "name": "plain", + "name": "plain-simplemapping-http-addresponseheaders-moo-arf-http", "namespace": "plain-namespace", - "resourceVersion": "36964", - "selfLink": "/api/v1/namespaces/plain-namespace/services/plain", - "uid": "13da5a65-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56148", + "selfLink": "/api/v1/namespaces/plain-namespace/services/plain-simplemapping-http-addresponseheaders-moo-arf-http", + "uid": "61ffde3e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.69.181", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.106.219.204", "ports": [ { "name": "http", - "nodePort": 31798, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8091 }, { "name": "https", - "nodePort": 30505, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8454 } ], "selector": { - "service": "plain" + "backend": "superpod-plain-namespace" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/ratelimitv0test/bootstrap-ads.json b/python/tests/gold/ratelimitv0test/bootstrap-ads.json index 6bea63370d..0afe7c28de 100644 --- a/python/tests/gold/ratelimitv0test/bootstrap-ads.json +++ b/python/tests/gold/ratelimitv0test/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "ratelimitv0test-default", "id": "test-id" diff --git a/python/tests/gold/ratelimitv0test/snapshots/econf.json b/python/tests/gold/ratelimitv0test/snapshots/econf.json index a12b369c01..f3ef0ba372 100644 --- a/python/tests/gold/ratelimitv0test/snapshots/econf.json +++ b/python/tests/gold/ratelimitv0test/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -98,14 +111,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -485,15 +501,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/ratelimitv0test/snapshots/snapshot.yaml b/python/tests/gold/ratelimitv0test/snapshots/snapshot.yaml index ac1eca044d..732b403207 100644 --- a/python/tests/gold/ratelimitv0test/snapshots/snapshot.yaml +++ b/python/tests/gold/ratelimitv0test/snapshots/snapshot.yaml @@ -20,41 +20,45 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: ratelimit_target_mapping\nprefix: /target/\nservice: ratelimitv0test-http\nrate_limits:\n- descriptor: A test case\n headers:\n - \"x-ambassador-test-allow\"\nambassador_id: ratelimitv0test\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: ratelimit_label_mapping\nprefix: /labels/\nservice: ratelimitv0test-http\nlabels:\n ambassador:\n - host_and_user:\n - custom-label:\n header: \":authority\"\n omit_if_not_present: true\n - user:\n header: \"x-user\"\n omit_if_not_present: true\n - omg_header:\n - custom-label:\n header: \"x-omg\"\n default: \"OMFG!\"\nambassador_id: ratelimitv0test\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv0test-http\\nrate_limits:\\n- descriptor: A test case\\n headers:\\n - \\\"x-ambassador-test-allow\\\"\\nambassador_id: ratelimitv0test\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_label_mapping\\nprefix: /labels/\\nservice: ratelimitv0test-http\\nlabels:\\n ambassador:\\n - host_and_user:\\n - custom-label:\\n header: \\\":authority\\\"\\n omit_if_not_present: true\\n - user:\\n header: \\\"x-user\\\"\\n omit_if_not_present: true\\n - omg_header:\\n - custom-label:\\n header: \\\"x-omg\\\"\\n default: \\\"OMFG!\\\"\\nambassador_id: ratelimitv0test\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv0test-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8114},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8477}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: RateLimitService\nname: ratelimit-v0\nservice: rate-limit-v0:5000\ntimeout_ms: 500\nambassador_id: ratelimitv0test\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: RateLimitService\\nname: ratelimit-v0\\nservice: rate-limit-v0:5000\\ntimeout_ms: 500\\nambassador_id: ratelimitv0test\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv0test\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"ratelimitv0test\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:01Z", + "creationTimestamp": "2020-02-19T23:20:23Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "ratelimitv0test", "scope": "AmbassadorTest" }, - "name": "ratelimitv0test-http", + "name": "ratelimitv0test", "namespace": "default", - "resourceVersion": "37402", - "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test-http", - "uid": "1ad7c6db-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56499", + "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test", + "uid": "678a07cc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.238.134", + "clusterIP": "10.102.194.13", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 30749, "port": 80, "protocol": "TCP", - "targetPort": 8114 + "targetPort": 8080 }, { "name": "https", + "nodePort": 31650, "port": 443, "protocol": "TCP", - "targetPort": 8477 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "ratelimitv0test" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -65,34 +69,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"rate-limit-v0\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"grpc\",\"port\":5000,\"targetPort\":\"grpc\"}],\"selector\":{\"app\":\"rate-limit-v0\"},\"type\":\"ClusterIP\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\",\"service\":\"ratelimitv0test-admin\"},\"name\":\"ratelimitv0test-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"ratelimitv0test-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"ratelimitv0test\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:01Z", + "creationTimestamp": "2020-02-19T23:20:23Z", "labels": { "kat-ambassador-id": "ratelimitv0test", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "ratelimitv0test-admin" }, - "name": "rate-limit-v0", + "name": "ratelimitv0test-admin", "namespace": "default", - "resourceVersion": "37392", - "selfLink": "/api/v1/namespaces/default/services/rate-limit-v0", - "uid": "1aa3aabd-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56505", + "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test-admin", + "uid": "67ad6d2f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.238.247", + "clusterIP": "10.106.16.95", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "grpc", - "port": 5000, + "name": "ratelimitv0test-admin", + "nodePort": 30838, + "port": 8877, "protocol": "TCP", - "targetPort": "grpc" + "targetPort": 8877 } ], "selector": { - "app": "rate-limit-v0" + "service": "ratelimitv0test" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -103,45 +110,41 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: RateLimitService\nname: ratelimit-v0\nservice: rate-limit-v0:5000\ntimeout_ms: 500\nambassador_id: ratelimitv0test\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: RateLimitService\\nname: ratelimit-v0\\nservice: rate-limit-v0:5000\\ntimeout_ms: 500\\nambassador_id: ratelimitv0test\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv0test\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"ratelimitv0test\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: ratelimit_target_mapping\nprefix: /target/\nservice: ratelimitv0test-http\nrate_limits:\n- descriptor: A test case\n headers:\n - \"x-ambassador-test-allow\"\nambassador_id: ratelimitv0test\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: ratelimit_label_mapping\nprefix: /labels/\nservice: ratelimitv0test-http\nlabels:\n ambassador:\n - host_and_user:\n - custom-label:\n header: \":authority\"\n omit_if_not_present: true\n - user:\n header: \"x-user\"\n omit_if_not_present: true\n - omg_header:\n - custom-label:\n header: \"x-omg\"\n default: \"OMFG!\"\nambassador_id: ratelimitv0test\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv0test-http\\nrate_limits:\\n- descriptor: A test case\\n headers:\\n - \\\"x-ambassador-test-allow\\\"\\nambassador_id: ratelimitv0test\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_label_mapping\\nprefix: /labels/\\nservice: ratelimitv0test-http\\nlabels:\\n ambassador:\\n - host_and_user:\\n - custom-label:\\n header: \\\":authority\\\"\\n omit_if_not_present: true\\n - user:\\n header: \\\"x-user\\\"\\n omit_if_not_present: true\\n - omg_header:\\n - custom-label:\\n header: \\\"x-omg\\\"\\n default: \\\"OMFG!\\\"\\nambassador_id: ratelimitv0test\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv0test-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8115},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8478}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:01Z", + "creationTimestamp": "2020-02-19T23:20:24Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "ratelimitv0test", "scope": "AmbassadorTest" }, - "name": "ratelimitv0test", + "name": "ratelimitv0test-http", "namespace": "default", - "resourceVersion": "37379", - "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test", - "uid": "1a6179fd-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56529", + "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test-http", + "uid": "680780af-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.21.223", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.107.128.16", "ports": [ { "name": "http", - "nodePort": 31509, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8115 }, { "name": "https", - "nodePort": 30893, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8478 } ], "selector": { - "service": "ratelimitv0test" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -152,37 +155,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\",\"service\":\"ratelimitv0test-admin\"},\"name\":\"ratelimitv0test-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"ratelimitv0test-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"ratelimitv0test\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv0test\",\"scope\":\"AmbassadorTest\"},\"name\":\"rate-limit-v0\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"grpc\",\"port\":5000,\"targetPort\":\"grpc\"}],\"selector\":{\"app\":\"rate-limit-v0\"},\"type\":\"ClusterIP\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:01Z", + "creationTimestamp": "2020-02-19T23:20:24Z", "labels": { "kat-ambassador-id": "ratelimitv0test", - "scope": "AmbassadorTest", - "service": "ratelimitv0test-admin" + "scope": "AmbassadorTest" }, - "name": "ratelimitv0test-admin", + "name": "rate-limit-v0", "namespace": "default", - "resourceVersion": "37383", - "selfLink": "/api/v1/namespaces/default/services/ratelimitv0test-admin", - "uid": "1a75f65c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56512", + "selfLink": "/api/v1/namespaces/default/services/rate-limit-v0", + "uid": "67cc7236-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.217.39", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.109.141.113", "ports": [ { - "name": "ratelimitv0test-admin", - "nodePort": 30698, - "port": 8877, + "name": "grpc", + "port": 5000, "protocol": "TCP", - "targetPort": 8877 + "targetPort": "grpc" } ], "selector": { - "service": "ratelimitv0test" + "app": "rate-limit-v0" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/ratelimitv1test/bootstrap-ads.json b/python/tests/gold/ratelimitv1test/bootstrap-ads.json index bf9f999c40..36f0bf1bdd 100644 --- a/python/tests/gold/ratelimitv1test/bootstrap-ads.json +++ b/python/tests/gold/ratelimitv1test/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "ratelimitv1test-default", "id": "test-id" diff --git a/python/tests/gold/ratelimitv1test/snapshots/econf.json b/python/tests/gold/ratelimitv1test/snapshots/econf.json index 3f9189ba09..3af797dcb3 100644 --- a/python/tests/gold/ratelimitv1test/snapshots/econf.json +++ b/python/tests/gold/ratelimitv1test/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -98,14 +111,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -353,15 +369,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/ratelimitv1test/snapshots/snapshot.yaml b/python/tests/gold/ratelimitv1test/snapshots/snapshot.yaml index aed551d028..fa84ffc5e7 100644 --- a/python/tests/gold/ratelimitv1test/snapshots/snapshot.yaml +++ b/python/tests/gold/ratelimitv1test/snapshots/snapshot.yaml @@ -15,6 +15,44 @@ "TracingService": null, "ingresses": null, "service": [ + { + "apiVersion": "v1", + "kind": "Service", + "metadata": { + "annotations": { + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\"},\"name\":\"rate-limit-v1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"grpc\",\"port\":5000,\"targetPort\":\"grpc\"}],\"selector\":{\"app\":\"rate-limit-v1\"},\"type\":\"ClusterIP\"}}\n" + }, + "creationTimestamp": "2020-02-19T23:20:25Z", + "labels": { + "kat-ambassador-id": "ratelimitv1test", + "scope": "AmbassadorTest" + }, + "name": "rate-limit-v1", + "namespace": "default", + "resourceVersion": "56555", + "selfLink": "/api/v1/namespaces/default/services/rate-limit-v1", + "uid": "68ae4dc6-536e-11ea-85dd-167682b5c255" + }, + "spec": { + "clusterIP": "10.99.82.125", + "ports": [ + { + "name": "grpc", + "port": 5000, + "protocol": "TCP", + "targetPort": "grpc" + } + ], + "selector": { + "app": "rate-limit-v1" + }, + "sessionAffinity": "None", + "type": "ClusterIP" + }, + "status": { + "loadBalancer": {} + } + }, { "apiVersion": "v1", "kind": "Service", @@ -23,7 +61,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: RateLimitService\nname: ratelimit-v1\nservice: rate-limit-v1:5000\ntimeout_ms: 500\nambassador_id: ratelimitv1test\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: RateLimitService\\nname: ratelimit-v1\\nservice: rate-limit-v1:5000\\ntimeout_ms: 500\\nambassador_id: ratelimitv1test\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1test\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"ratelimitv1test\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:02Z", + "creationTimestamp": "2020-02-19T23:20:25Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "ratelimitv1test", @@ -31,24 +69,24 @@ }, "name": "ratelimitv1test", "namespace": "default", - "resourceVersion": "37424", + "resourceVersion": "56542", "selfLink": "/api/v1/namespaces/default/services/ratelimitv1test", - "uid": "1b42c5c7-4794-11ea-829a-062d8f98984d" + "uid": "686505eb-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.171.66", + "clusterIP": "10.108.72.241", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30579, + "nodePort": 30567, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32760, + "nodePort": 31012, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +109,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\",\"service\":\"ratelimitv1test-admin\"},\"name\":\"ratelimitv1test-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"ratelimitv1test-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"ratelimitv1test\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:02Z", + "creationTimestamp": "2020-02-19T23:20:25Z", "labels": { "kat-ambassador-id": "ratelimitv1test", "scope": "AmbassadorTest", @@ -79,17 +117,17 @@ }, "name": "ratelimitv1test-admin", "namespace": "default", - "resourceVersion": "37429", + "resourceVersion": "56546", "selfLink": "/api/v1/namespaces/default/services/ratelimitv1test-admin", - "uid": "1b5687d4-4794-11ea-829a-062d8f98984d" + "uid": "687bb29e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.202.117", + "clusterIP": "10.109.152.1", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "ratelimitv1test-admin", - "nodePort": 32715, + "nodePort": 30732, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -111,33 +149,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: ratelimit_target_mapping\nprefix: /target/\nservice: ratelimitv1test-http\nlabels:\n ambassador:\n - request_label_group:\n - x-ambassador-test-allow:\n header: \"x-ambassador-test-allow\"\n omit_if_not_present: true\nambassador_id: ratelimitv1test\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv1test-http\\nlabels:\\n ambassador:\\n - request_label_group:\\n - x-ambassador-test-allow:\\n header: \\\"x-ambassador-test-allow\\\"\\n omit_if_not_present: true\\nambassador_id: ratelimitv1test\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1test-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8115},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8478}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv1test-http\\nlabels:\\n ambassador:\\n - request_label_group:\\n - x-ambassador-test-allow:\\n header: \\\"x-ambassador-test-allow\\\"\\n omit_if_not_present: true\\nambassador_id: ratelimitv1test\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1test-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8116},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8479}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:03Z", + "creationTimestamp": "2020-02-19T23:20:26Z", "labels": { "kat-ambassador-id": "ratelimitv1test", "scope": "AmbassadorTest" }, "name": "ratelimitv1test-http", "namespace": "default", - "resourceVersion": "37454", + "resourceVersion": "56566", "selfLink": "/api/v1/namespaces/default/services/ratelimitv1test-http", - "uid": "1bad1ea2-4794-11ea-829a-062d8f98984d" + "uid": "68f0fc85-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.195.74", + "clusterIP": "10.101.168.234", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8115 + "targetPort": 8116 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8478 + "targetPort": 8479 } ], "selector": { @@ -149,44 +187,6 @@ "status": { "loadBalancer": {} } - }, - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1test\",\"scope\":\"AmbassadorTest\"},\"name\":\"rate-limit-v1\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"grpc\",\"port\":5000,\"targetPort\":\"grpc\"}],\"selector\":{\"app\":\"rate-limit-v1\"},\"type\":\"ClusterIP\"}}\n" - }, - "creationTimestamp": "2020-02-04T21:20:02Z", - "labels": { - "kat-ambassador-id": "ratelimitv1test", - "scope": "AmbassadorTest" - }, - "name": "rate-limit-v1", - "namespace": "default", - "resourceVersion": "37436", - "selfLink": "/api/v1/namespaces/default/services/rate-limit-v1", - "uid": "1b752eeb-4794-11ea-829a-062d8f98984d" - }, - "spec": { - "clusterIP": "10.104.114.10", - "ports": [ - { - "name": "grpc", - "port": 5000, - "protocol": "TCP", - "targetPort": "grpc" - } - ], - "selector": { - "app": "rate-limit-v1" - }, - "sessionAffinity": "None", - "type": "ClusterIP" - }, - "status": { - "loadBalancer": {} - } } ] } diff --git a/python/tests/gold/ratelimitv1withtlstest/bootstrap-ads.json b/python/tests/gold/ratelimitv1withtlstest/bootstrap-ads.json index 8eec5b3bd2..05765e82f4 100644 --- a/python/tests/gold/ratelimitv1withtlstest/bootstrap-ads.json +++ b/python/tests/gold/ratelimitv1withtlstest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "ratelimitv1withtlstest-default", "id": "test-id" diff --git a/python/tests/gold/ratelimitv1withtlstest/snapshots/econf.json b/python/tests/gold/ratelimitv1withtlstest/snapshots/econf.json index 2b48ab43b3..858054ab0a 100644 --- a/python/tests/gold/ratelimitv1withtlstest/snapshots/econf.json +++ b/python/tests/gold/ratelimitv1withtlstest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -54,21 +67,25 @@ ] }, "name": "cluster_rate_limit_tls_5000_otls_ratelim-0", - "tls_context": { - "common_tls_context": { - "alpn_protocols": [ - "h2" - ], - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/ratelimit-tls-secret/1DD5A6E63A26C002E05F2A82F1E950AAF0850900.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/ratelimit-tls-secret/1DD5A6E63A26C002E05F2A82F1E950AAF0850900.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "alpn_protocols": [ + "h2" + ], + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/ratelimit-tls-secret/1DD5A6E63A26C002E05F2A82F1E950AAF0850900.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/ratelimit-tls-secret/1DD5A6E63A26C002E05F2A82F1E950AAF0850900.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -115,14 +132,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -370,15 +390,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/ratelimitv1withtlstest/snapshots/snapshot.yaml b/python/tests/gold/ratelimitv1withtlstest/snapshots/snapshot.yaml index 633ca5e14e..96437cbb3c 100644 --- a/python/tests/gold/ratelimitv1withtlstest/snapshots/snapshot.yaml +++ b/python/tests/gold/ratelimitv1withtlstest/snapshots/snapshot.yaml @@ -26,66 +26,21 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURDakNDQWZJQ0NRRGdYUjZ3V1Z6Wk9EQU5CZ2txaGtpRzl3MEJBUVVGQURCSE1SNHdIQVlEVlFRRERCVnkKWVhSbGJHbHRhWFF1WkdGMFlYZHBjbVV1YVc4eEpUQWpCZ2txaGtpRzl3MEJDUUVXRm1odmMzUnRZWE4wWlhKQQpaR0YwWVhkcGNtVXVhVzh3SGhjTk1Ua3dPVEU1TVRnek16QXlXaGNOTWpFd09ERTVNVGd6TXpBeVdqQkhNUjR3CkhBWURWUVFEREJWeVlYUmxiR2x0YVhRdVpHRjBZWGRwY21VdWFXOHhKVEFqQmdrcWhraUc5dzBCQ1FFV0ZtaHYKYzNSdFlYTjBaWEpBWkdGMFlYZHBjbVV1YVc4d2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFSwpBb0lCQVFDeWw5VkJtVjVCcFYxOHZzclNqUktyZGlEVnZZS0dxNlZVaGFTRTlZSWNRODhiSTFaeHlhUE9zUVlRCmMycmY4Q0RKdUp4M1hoUjUzMENwN3pQNmVSMjNwMkZBOSsxSWs5SHZhWUx0WDRtQTJOdjh4V1kxaEhua1BURnMKVFRwazBMREdYYjVZWnh2QkczNTNKL3NFKzFrSUUxenpKZldpQUpUMzZzMk5PRzRVQWhoVmFPS2p1K3grYXJwbQoyZnNhTldKTTFEMS9CUXVVN1Vid0p0QmIyZFo2WUtUNHE4M2doQWgybDhad1hQcFdJQmtpWGpNNXJ0WkQ3QmN4CkRxdFNtVE1ZejVjZWNwbmhiNEw4Z3hFVUJyWlRxQ3g4RVkvcDArY05mN2hScmFWbTd6Q3BaRDhvSUtLS0IvUDQKM1dHZHRHNlpHS0VFSmtXNjB5QWtxRmI3czNWdEFnTUJBQUV3RFFZSktvWklodmNOQVFFRkJRQURnZ0VCQUFJUwp2Znh1K3dQcUxicVRZV1NLTUt6S3JmNUxxWlpBZFpZZXNIR0oxNmFyVmt6eGhzcElGRGZpblZ1UmI1eERxWVVSCnFta0U1K0dCNDh5UGoxaUQvdXdPOEI0ckFnNW1Pekw1MEpUMDVQT1dyc0hjK1loLzAvUXpGNmlqNHlVNWZ6dloKRHpJdFBiNE5qWTMxUE44WkJMYTFGSHk5d2JGSzdyS2lWK2MxTzd0UHVjQTVUWnoxS0h5VUVYaWxHdmNoczB4OApzazRJR2xrVTNoSDFVWHBzTmw0NTI4VjR0L3dXOTdiYmhFeHYvYnBwR3RLbjRKei9hYkNScjA3Q3kzUytjUzc5CnlQNTZiQVZxa1R2TTVkUkhiNG9zOGYzNUJuQTdPci9YRTQ2K2VRMXNVY21IVG5OUWdFVkpWZGVwR3V4Sk5pNFMKejJ0WHhHSStTdTFlUnlQcVNGWT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQ3lsOVZCbVY1QnBWMTgKdnNyU2pSS3JkaURWdllLR3E2VlVoYVNFOVlJY1E4OGJJMVp4eWFQT3NRWVFjMnJmOENESnVKeDNYaFI1MzBDcAo3elA2ZVIyM3AyRkE5KzFJazlIdmFZTHRYNG1BMk52OHhXWTFoSG5rUFRGc1RUcGswTERHWGI1WVp4dkJHMzUzCkovc0UrMWtJRTF6ekpmV2lBSlQzNnMyTk9HNFVBaGhWYU9LanUreCthcnBtMmZzYU5XSk0xRDEvQlF1VTdVYncKSnRCYjJkWjZZS1Q0cTgzZ2hBaDJsOFp3WFBwV0lCa2lYak01cnRaRDdCY3hEcXRTbVRNWXo1Y2VjcG5oYjRMOApneEVVQnJaVHFDeDhFWS9wMCtjTmY3aFJyYVZtN3pDcFpEOG9JS0tLQi9QNDNXR2R0RzZaR0tFRUprVzYweUFrCnFGYjdzM1Z0QWdNQkFBRUNnZ0VBS3hvNzdOWWdDb1hubHpqUTZKb0ZuSDRwRkl6bFdLMUtmS2k0ZVNKcm9YaTQKSGx1Yi9HQm0rWFo5K1RCeDVkUWxoYW5aa1hHU1RZdVZKcTVGaERrQTlCY2dnTGFWZlFPNEVpa0w0VkJDZG1kZwpTSlEzdzhqU1JrU0NqaG5oY3YxdS9LRVpWR3FtSnlnRWtLdUVpTUpFelk4bXlzUXBrVXpFcDBUekVSZENjZTljClNKT2Q2V2dGYUdzN3ZmTEpMajBmTk1SYytwcjFORnBmcTk0R2lyZFVyQUIvOHhlL2lpT3hnZXJoM1JPR0I4Z1MKZWpMeTZmZEhZK0Y1d2cyREtFMjVjeHcrdWFUeEo4MElucktWYTdhVjlqeGl1L0YvWW42a0FGT201cUFaTEdJUQo3bDVDY0dMWCtKdS96UGNpSEJRRWx2R2dSTGdZTCtxWHNPYStyZ3VvZ1FLQmdRRFpVU25xQUdvd2Zma3h1QTB2CnVxc042M3NaMHFVVUMraDB1aGZCanV1ZGxEZU8rM2U5WC9ncW1vTHFnYmpLbUNxcHZ0eFRKT2RZbWlkTG42QysKU3ZIMkw5V3RBNzVFMDB1bDdWb0VEOWs5S1c5aEU4M1ZoM0hJcnowQ3RtLzAvMEtJaVlXb2VkaWw2YktlTndUSApXci9MdlI5M2F2dHo2NUkwVWFBVjVyMjhqUUtCZ1FEU1loS2R1YzB1YUQ2VW45NW0yTmZJelRaNWxaNmZZdFFyCkZHbzByWWlTelZCRlZrNnR3akI5dmhtdmtjZjBNU21wQ1NPUUZGcjJ3Zk9UZGtBTnlxTWxwNXdHK3ZpRi9LeGMKcXNMQ1RROGhwNmFnazMzRE9MVEl2OXpKdkhnU2NsWW9pOTZqNk9Zc28rWUtITkxmTU1jVWw3dThqYmZ3YWx2dwp4Tno3WkdRVVlRS0JnSFdsZWRKamJSbFphVWxnUVV0QWZBL3FGbGR4Y01xOGM1aVZrZnpJT1lleVVLMklOMWQvCkYrTkFpSFVaeXdkcWYxWXJyQzBhd2w5MS9LWDFBZGxpeTBDaXZzT09UamdHUjJMSmJyemFNNW5uejVNM1hHd24KaWhMQnczNnZjMGFuMWNZQzVTZkM1dVZTOGM2ekxGUWNMYzdIVUx5ZVh3aHZWRlFjaUZTeStLNlZBb0dBUkFObQpwMDBBOHliS1RId2VoenRGRDJxZ1dOQXc5ckFaalUvTlFmaHo5Wm1nZ0xuMU42RlcwZC9hSi9OR0pFQ2Npa1FsCkZoZ3VqQ1dKbkR1WFc1NE4va2RnWHJWV0VPTHR5Z3QrYVJoR2N3ZmpDM2lES05DMVNVMFZrTFo0VHVaZHlqL2wKbXpIWTc4ZVF2K1l2bWU0SC9qVkxnUnFEdzVwdTNMaVlCRUdoUlNFQ2dZRUExdmNGWmsxOXVLS0JSWDhFRlgzbQphTlk2QWVhWTVJV2xVbDFJbEpHUHBFNnBnejh1aVRYNU9paG5KbGh4NDIzdjBIRU1QV0ZxNXQzcCtJdGRKZ24zCnlTQ0RNcXhyZUo4cytCS3BqeUcwVHFjN0pkbkpUcm1NN1FUMCtVUXExYmlBOENiU0FvMWVybHJpcEZ1blVMblEKSXp3SURyM1VzN0ROQkxNZmlOaDZuVWs9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimit-tls-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:04Z", + "creationTimestamp": "2020-02-19T23:20:27Z", "labels": { "kat-ambassador-id": "ratelimitv1withtlstest", "scope": "AmbassadorTest" }, "name": "ratelimit-tls-secret", "namespace": "default", - "resourceVersion": "37492", + "resourceVersion": "56609", "selfLink": "/api/v1/namespaces/default/secrets/ratelimit-tls-secret", - "uid": "1c310cf9-4794-11ea-829a-062d8f98984d" + "uid": "69a2ca5f-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } ], "service": [ - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TLSContext\nname: ratelimit-tls-context\nsecret: ratelimit-tls-secret\nalpn_protocols: h2\nambassador_id: ratelimitv1withtlstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: ratelimit_target_mapping\nprefix: /target/\nservice: ratelimitv1withtlstest-http\nlabels:\n ambassador:\n - request_label_group:\n - x-ambassador-test-allow:\n header: \"x-ambassador-test-allow\"\n omit_if_not_present: true\nambassador_id: ratelimitv1withtlstest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: ratelimit-tls-context\\nsecret: ratelimit-tls-secret\\nalpn_protocols: h2\\nambassador_id: ratelimitv1withtlstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv1withtlstest-http\\nlabels:\\n ambassador:\\n - request_label_group:\\n - x-ambassador-test-allow:\\n header: \\\"x-ambassador-test-allow\\\"\\n omit_if_not_present: true\\nambassador_id: ratelimitv1withtlstest\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1withtlstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8116},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8479}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" - }, - "creationTimestamp": "2020-02-04T21:20:04Z", - "labels": { - "kat-ambassador-id": "ratelimitv1withtlstest", - "scope": "AmbassadorTest" - }, - "name": "ratelimitv1withtlstest-http", - "namespace": "default", - "resourceVersion": "37494", - "selfLink": "/api/v1/namespaces/default/services/ratelimitv1withtlstest-http", - "uid": "1c394868-4794-11ea-829a-062d8f98984d" - }, - "spec": { - "clusterIP": "10.108.7.57", - "ports": [ - { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8116 - }, - { - "name": "https", - "port": 443, - "protocol": "TCP", - "targetPort": 8479 - } - ], - "selector": { - "backend": "superpod-default" - }, - "sessionAffinity": "None", - "type": "ClusterIP" - }, - "status": { - "loadBalancer": {} - } - }, { "apiVersion": "v1", "kind": "Service", @@ -93,19 +48,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"rate-limit-tls\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"grpc\",\"port\":5000,\"targetPort\":\"grpc\"}],\"selector\":{\"app\":\"rate-limit-tls\"},\"type\":\"ClusterIP\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:04Z", + "creationTimestamp": "2020-02-19T23:20:27Z", "labels": { "kat-ambassador-id": "ratelimitv1withtlstest", "scope": "AmbassadorTest" }, "name": "rate-limit-tls", "namespace": "default", - "resourceVersion": "37478", + "resourceVersion": "56599", "selfLink": "/api/v1/namespaces/default/services/rate-limit-tls", - "uid": "1c21d77a-4794-11ea-829a-062d8f98984d" + "uid": "6992d892-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.175.164", + "clusterIP": "10.99.237.209", "ports": [ { "name": "grpc", @@ -132,7 +87,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: RateLimitService\nname: ratelimit-tls\nservice: rate-limit-tls:5000\ntimeout_ms: 500\ntls: ratelimit-tls-context\nambassador_id: ratelimitv1withtlstest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: RateLimitService\\nname: ratelimit-tls\\nservice: rate-limit-tls:5000\\ntimeout_ms: 500\\ntls: ratelimit-tls-context\\nambassador_id: ratelimitv1withtlstest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1withtlstest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"ratelimitv1withtlstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:03Z", + "creationTimestamp": "2020-02-19T23:20:26Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "ratelimitv1withtlstest", @@ -140,24 +95,24 @@ }, "name": "ratelimitv1withtlstest", "namespace": "default", - "resourceVersion": "37467", + "resourceVersion": "56588", "selfLink": "/api/v1/namespaces/default/services/ratelimitv1withtlstest", - "uid": "1c0842ad-4794-11ea-829a-062d8f98984d" + "uid": "69666218-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.171.9", + "clusterIP": "10.111.107.219", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30708, + "nodePort": 31485, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31603, + "nodePort": 31886, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -180,7 +135,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\",\"service\":\"ratelimitv1withtlstest-admin\"},\"name\":\"ratelimitv1withtlstest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"ratelimitv1withtlstest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"ratelimitv1withtlstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:03Z", + "creationTimestamp": "2020-02-19T23:20:26Z", "labels": { "kat-ambassador-id": "ratelimitv1withtlstest", "scope": "AmbassadorTest", @@ -188,17 +143,17 @@ }, "name": "ratelimitv1withtlstest-admin", "namespace": "default", - "resourceVersion": "37471", + "resourceVersion": "56593", "selfLink": "/api/v1/namespaces/default/services/ratelimitv1withtlstest-admin", - "uid": "1c11a97d-4794-11ea-829a-062d8f98984d" + "uid": "69756b77-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.185.215", + "clusterIP": "10.111.242.176", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "ratelimitv1withtlstest-admin", - "nodePort": 31332, + "nodePort": 32199, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -213,6 +168,51 @@ "status": { "loadBalancer": {} } + }, + { + "apiVersion": "v1", + "kind": "Service", + "metadata": { + "annotations": { + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TLSContext\nname: ratelimit-tls-context\nsecret: ratelimit-tls-secret\nalpn_protocols: h2\nambassador_id: ratelimitv1withtlstest\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: ratelimit_target_mapping\nprefix: /target/\nservice: ratelimitv1withtlstest-http\nlabels:\n ambassador:\n - request_label_group:\n - x-ambassador-test-allow:\n header: \"x-ambassador-test-allow\"\n omit_if_not_present: true\nambassador_id: ratelimitv1withtlstest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: ratelimit-tls-context\\nsecret: ratelimit-tls-secret\\nalpn_protocols: h2\\nambassador_id: ratelimitv1withtlstest\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: ratelimit_target_mapping\\nprefix: /target/\\nservice: ratelimitv1withtlstest-http\\nlabels:\\n ambassador:\\n - request_label_group:\\n - x-ambassador-test-allow:\\n header: \\\"x-ambassador-test-allow\\\"\\n omit_if_not_present: true\\nambassador_id: ratelimitv1withtlstest\\n\"},\"labels\":{\"kat-ambassador-id\":\"ratelimitv1withtlstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"ratelimitv1withtlstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8117},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8480}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + }, + "creationTimestamp": "2020-02-19T23:20:27Z", + "labels": { + "kat-ambassador-id": "ratelimitv1withtlstest", + "scope": "AmbassadorTest" + }, + "name": "ratelimitv1withtlstest-http", + "namespace": "default", + "resourceVersion": "56617", + "selfLink": "/api/v1/namespaces/default/services/ratelimitv1withtlstest-http", + "uid": "69b04ed6-536e-11ea-85dd-167682b5c255" + }, + "spec": { + "clusterIP": "10.96.90.75", + "ports": [ + { + "name": "http", + "port": 80, + "protocol": "TCP", + "targetPort": 8117 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8480 + } + ], + "selector": { + "backend": "superpod-default" + }, + "sessionAffinity": "None", + "type": "ClusterIP" + }, + "status": { + "loadBalancer": {} + } } ] } diff --git a/python/tests/gold/redirecttests/bootstrap-ads.json b/python/tests/gold/redirecttests/bootstrap-ads.json index 78c3f79585..9c66b5c7ba 100644 --- a/python/tests/gold/redirecttests/bootstrap-ads.json +++ b/python/tests/gold/redirecttests/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "redirecttests-default", "id": "test-id" diff --git a/python/tests/gold/redirecttests/snapshots/econf.json b/python/tests/gold/redirecttests/snapshots/econf.json index 467af06dcb..e98255ae80 100644 --- a/python/tests/gold/redirecttests/snapshots/econf.json +++ b/python/tests/gold/redirecttests/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -274,8 +290,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -301,7 +316,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { @@ -316,14 +332,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -418,15 +437,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/redirecttests/snapshots/snapshot.yaml b/python/tests/gold/redirecttests/snapshots/snapshot.yaml index b35fff1da6..7ca8076b5b 100644 --- a/python/tests/gold/redirecttests/snapshots/snapshot.yaml +++ b/python/tests/gold/redirecttests/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"redirecttests\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirect-cert\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:05Z", + "creationTimestamp": "2020-02-19T23:20:30Z", "labels": { "kat-ambassador-id": "redirecttests", "scope": "AmbassadorTest" }, "name": "redirect-cert", "namespace": "default", - "resourceVersion": "37526", + "resourceVersion": "56656", "selfLink": "/api/v1/namespaces/default/secrets/redirect-cert", - "uid": "1cb799fb-4794-11ea-829a-062d8f98984d" + "uid": "6b63b350-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: tls\nambassador_id: redirecttests\nconfig:\n server:\n enabled: True\n secret: redirect-cert\n redirect_cleartext_from: 8080\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: tls\\nambassador_id: redirecttests\\nconfig:\\n server:\\n enabled: True\\n secret: redirect-cert\\n redirect_cleartext_from: 8080\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"redirecttests\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttests\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"redirecttests\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:04Z", + "creationTimestamp": "2020-02-19T23:20:27Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "redirecttests", @@ -57,24 +57,24 @@ }, "name": "redirecttests", "namespace": "default", - "resourceVersion": "37508", + "resourceVersion": "56630", "selfLink": "/api/v1/namespaces/default/services/redirecttests", - "uid": "1c78839f-4794-11ea-829a-062d8f98984d" + "uid": "69e43d96-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.66.91", + "clusterIP": "10.105.142.103", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30313, + "nodePort": 31840, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31941, + "nodePort": 31004, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"redirecttests\",\"scope\":\"AmbassadorTest\",\"service\":\"redirecttests-admin\"},\"name\":\"redirecttests-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"redirecttests-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"redirecttests\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:04Z", + "creationTimestamp": "2020-02-19T23:20:28Z", "labels": { "kat-ambassador-id": "redirecttests", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "redirecttests-admin", "namespace": "default", - "resourceVersion": "37513", + "resourceVersion": "56639", "selfLink": "/api/v1/namespaces/default/services/redirecttests-admin", - "uid": "1c8db310-4794-11ea-829a-062d8f98984d" + "uid": "6a480709-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.216.9", + "clusterIP": "10.96.232.205", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "redirecttests-admin", - "nodePort": 32647, + "nodePort": 30061, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -137,33 +137,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: redirecttests-http\nambassador_id: redirecttests\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttests-http\\nambassador_id: redirecttests\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttests\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttests-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8117},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8480}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttests-http\\nambassador_id: redirecttests\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttests\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttests-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8118},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8481}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:05Z", + "creationTimestamp": "2020-02-19T23:20:30Z", "labels": { "kat-ambassador-id": "redirecttests", "scope": "AmbassadorTest" }, "name": "redirecttests-http", "namespace": "default", - "resourceVersion": "37529", + "resourceVersion": "56660", "selfLink": "/api/v1/namespaces/default/services/redirecttests-http", - "uid": "1ce06b96-4794-11ea-829a-062d8f98984d" + "uid": "6b7a7fa8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.37.128", + "clusterIP": "10.99.155.22", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8117 + "targetPort": 8118 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8480 + "targetPort": 8481 } ], "selector": { diff --git a/python/tests/gold/redirecttestsinvalidsecret/bootstrap-ads.json b/python/tests/gold/redirecttestsinvalidsecret/bootstrap-ads.json index 528089afe8..db8642fee1 100644 --- a/python/tests/gold/redirecttestsinvalidsecret/bootstrap-ads.json +++ b/python/tests/gold/redirecttestsinvalidsecret/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "redirecttestsinvalidsecret-default", "id": "test-id" diff --git a/python/tests/gold/redirecttestsinvalidsecret/snapshots/econf.json b/python/tests/gold/redirecttestsinvalidsecret/snapshots/econf.json index 0a23c6b159..3526de0723 100644 --- a/python/tests/gold/redirecttestsinvalidsecret/snapshots/econf.json +++ b/python/tests/gold/redirecttestsinvalidsecret/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -272,15 +288,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { @@ -295,14 +311,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -397,15 +416,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/redirecttestsinvalidsecret/snapshots/snapshot.yaml b/python/tests/gold/redirecttestsinvalidsecret/snapshots/snapshot.yaml index caa81222ea..933abe6dcc 100644 --- a/python/tests/gold/redirecttestsinvalidsecret/snapshots/snapshot.yaml +++ b/python/tests/gold/redirecttestsinvalidsecret/snapshots/snapshot.yaml @@ -21,38 +21,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: tls\nambassador_id: redirecttestsinvalidsecret\nconfig:\n server:\n enabled: True\n secret: does-not-exist-secret\n redirect_cleartext_from: 8080\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: tls\\nambassador_id: redirecttestsinvalidsecret\\nconfig:\\n server:\\n enabled: True\\n secret: does-not-exist-secret\\n redirect_cleartext_from: 8080\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestsinvalidsecret\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"redirecttestsinvalidsecret\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\",\"service\":\"redirecttestsinvalidsecret-admin\"},\"name\":\"redirecttestsinvalidsecret-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"redirecttestsinvalidsecret-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"redirecttestsinvalidsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:07Z", + "creationTimestamp": "2020-02-19T23:20:33Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "redirecttestsinvalidsecret", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "redirecttestsinvalidsecret-admin" }, - "name": "redirecttestsinvalidsecret", + "name": "redirecttestsinvalidsecret-admin", "namespace": "default", - "resourceVersion": "37576", - "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret", - "uid": "1e6b7500-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56726", + "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret-admin", + "uid": "6da7f5d5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.246.122", + "clusterIP": "10.108.210.127", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 30988, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 30585, - "port": 443, + "name": "redirecttestsinvalidsecret-admin", + "nodePort": 30313, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -70,37 +62,41 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\",\"service\":\"redirecttestsinvalidsecret-admin\"},\"name\":\"redirecttestsinvalidsecret-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"redirecttestsinvalidsecret-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"redirecttestsinvalidsecret\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: redirecttestsinvalidsecret-http\nambassador_id: redirecttestsinvalidsecret\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttestsinvalidsecret-http\\nambassador_id: redirecttestsinvalidsecret\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestsinvalidsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8120},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8483}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:08Z", + "creationTimestamp": "2020-02-19T23:20:34Z", "labels": { "kat-ambassador-id": "redirecttestsinvalidsecret", - "scope": "AmbassadorTest", - "service": "redirecttestsinvalidsecret-admin" + "scope": "AmbassadorTest" }, - "name": "redirecttestsinvalidsecret-admin", + "name": "redirecttestsinvalidsecret-http", "namespace": "default", - "resourceVersion": "37583", - "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret-admin", - "uid": "1eac2ef1-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56736", + "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret-http", + "uid": "6e0a2238-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.29.226", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.103.135.166", "ports": [ { - "name": "redirecttestsinvalidsecret-admin", - "nodePort": 31066, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8120 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8483 } ], "selector": { - "service": "redirecttestsinvalidsecret" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -111,41 +107,45 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: redirecttestsinvalidsecret-http\nambassador_id: redirecttestsinvalidsecret\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttestsinvalidsecret-http\\nambassador_id: redirecttestsinvalidsecret\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestsinvalidsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8119},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8482}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: tls\nambassador_id: redirecttestsinvalidsecret\nconfig:\n server:\n enabled: True\n secret: does-not-exist-secret\n redirect_cleartext_from: 8080\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: tls\\nambassador_id: redirecttestsinvalidsecret\\nconfig:\\n server:\\n enabled: True\\n secret: does-not-exist-secret\\n redirect_cleartext_from: 8080\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"redirecttestsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestsinvalidsecret\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"redirecttestsinvalidsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:08Z", + "creationTimestamp": "2020-02-19T23:20:33Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "redirecttestsinvalidsecret", "scope": "AmbassadorTest" }, - "name": "redirecttestsinvalidsecret-http", + "name": "redirecttestsinvalidsecret", "namespace": "default", - "resourceVersion": "37592", - "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret-http", - "uid": "1eee1aa0-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56720", + "selfLink": "/api/v1/namespaces/default/services/redirecttestsinvalidsecret", + "uid": "6d8b0088-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.15.85", + "clusterIP": "10.111.5.75", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 31318, "port": 80, "protocol": "TCP", - "targetPort": 8119 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30810, "port": 443, "protocol": "TCP", - "targetPort": 8482 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "redirecttestsinvalidsecret" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/redirecttestswithproxyproto/bootstrap-ads.json b/python/tests/gold/redirecttestswithproxyproto/bootstrap-ads.json index 57cc9075a3..67fe3bc14c 100644 --- a/python/tests/gold/redirecttestswithproxyproto/bootstrap-ads.json +++ b/python/tests/gold/redirecttestswithproxyproto/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "redirecttestswithproxyproto-default", "id": "test-id" diff --git a/python/tests/gold/redirecttestswithproxyproto/snapshots/econf.json b/python/tests/gold/redirecttestswithproxyproto/snapshots/econf.json index 23880251f4..03ed5bfe28 100644 --- a/python/tests/gold/redirecttestswithproxyproto/snapshots/econf.json +++ b/python/tests/gold/redirecttestswithproxyproto/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -284,15 +300,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": true } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/redirecttestswithproxyproto/snapshots/snapshot.yaml b/python/tests/gold/redirecttestswithproxyproto/snapshots/snapshot.yaml index 69d76a7649..2d4b84f811 100644 --- a/python/tests/gold/redirecttestswithproxyproto/snapshots/snapshot.yaml +++ b/python/tests/gold/redirecttestswithproxyproto/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nconfig:\n use_proxy_proto: true\n enable_ipv6: true\nambassador_id: redirecttestswithproxyproto\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nconfig:\\n use_proxy_proto: true\\n enable_ipv6: true\\nambassador_id: redirecttestswithproxyproto\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"redirecttestswithproxyproto\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestswithproxyproto\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"redirecttestswithproxyproto\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:06Z", + "creationTimestamp": "2020-02-19T23:20:32Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "redirecttestswithproxyproto", @@ -31,24 +31,24 @@ }, "name": "redirecttestswithproxyproto", "namespace": "default", - "resourceVersion": "37543", + "resourceVersion": "56692", "selfLink": "/api/v1/namespaces/default/services/redirecttestswithproxyproto", - "uid": "1d641f6c-4794-11ea-829a-062d8f98984d" + "uid": "6cbbe1e0-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.36.187", + "clusterIP": "10.107.40.131", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32288, + "nodePort": 30683, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30757, + "nodePort": 30159, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"redirecttestswithproxyproto\",\"scope\":\"AmbassadorTest\",\"service\":\"redirecttestswithproxyproto-admin\"},\"name\":\"redirecttestswithproxyproto-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"redirecttestswithproxyproto-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"redirecttestswithproxyproto\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:06Z", + "creationTimestamp": "2020-02-19T23:20:32Z", "labels": { "kat-ambassador-id": "redirecttestswithproxyproto", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "redirecttestswithproxyproto-admin", "namespace": "default", - "resourceVersion": "37553", + "resourceVersion": "56697", "selfLink": "/api/v1/namespaces/default/services/redirecttestswithproxyproto-admin", - "uid": "1db76990-4794-11ea-829a-062d8f98984d" + "uid": "6cc52a1d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.213.221", + "clusterIP": "10.107.175.8", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "redirecttestswithproxyproto-admin", - "nodePort": 31423, + "nodePort": 32064, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -111,33 +111,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: redirecttestswithproxyproto-http\nambassador_id: redirecttestswithproxyproto\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttestswithproxyproto-http\\nambassador_id: redirecttestswithproxyproto\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttestswithproxyproto\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestswithproxyproto-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8118},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8481}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: redirecttestswithproxyproto-http\\nambassador_id: redirecttestswithproxyproto\\n\"},\"labels\":{\"kat-ambassador-id\":\"redirecttestswithproxyproto\",\"scope\":\"AmbassadorTest\"},\"name\":\"redirecttestswithproxyproto-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8119},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8482}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:07Z", + "creationTimestamp": "2020-02-19T23:20:33Z", "labels": { "kat-ambassador-id": "redirecttestswithproxyproto", "scope": "AmbassadorTest" }, "name": "redirecttestswithproxyproto-http", "namespace": "default", - "resourceVersion": "37561", + "resourceVersion": "56706", "selfLink": "/api/v1/namespaces/default/services/redirecttestswithproxyproto-http", - "uid": "1de3556e-4794-11ea-829a-062d8f98984d" + "uid": "6d2b2fb0-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.115.14", + "clusterIP": "10.101.125.45", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8118 + "targetPort": 8119 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8481 + "targetPort": 8482 } ], "selector": { diff --git a/python/tests/gold/retrypolicytest/bootstrap-ads.json b/python/tests/gold/retrypolicytest/bootstrap-ads.json index 976947d958..0dbdbdcabe 100644 --- a/python/tests/gold/retrypolicytest/bootstrap-ads.json +++ b/python/tests/gold/retrypolicytest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "retrypolicytest-default", "id": "test-id" diff --git a/python/tests/gold/retrypolicytest/snapshots/econf.json b/python/tests/gold/retrypolicytest/snapshots/econf.json index 541e9246b8..a7058d8aab 100644 --- a/python/tests/gold/retrypolicytest/snapshots/econf.json +++ b/python/tests/gold/retrypolicytest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -368,15 +384,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/retrypolicytest/snapshots/snapshot.yaml b/python/tests/gold/retrypolicytest/snapshots/snapshot.yaml index 975a27ba25..75dc38daec 100644 --- a/python/tests/gold/retrypolicytest/snapshots/snapshot.yaml +++ b/python/tests/gold/retrypolicytest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: RetryPolicyTest-normal\nprefix: /RetryPolicyTest-normal/\nservice: retrypolicytest-http\ntimeout_ms: 3000\nambassador_id: retrypolicytest\n\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: RetryPolicyTest-target\nprefix: /RetryPolicyTest-retry/\nservice: retrypolicytest-http\ntimeout_ms: 3000\nretry_policy:\n retry_on: \"5xx\"\n num_retries: 4\nambassador_id: retrypolicytest\n\n---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n retry_policy:\n retry_on: \"retriable-4xx\"\n num_retries: 4\nambassador_id: retrypolicytest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: RetryPolicyTest-normal\\nprefix: /RetryPolicyTest-normal/\\nservice: retrypolicytest-http\\ntimeout_ms: 3000\\nambassador_id: retrypolicytest\\n\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: RetryPolicyTest-target\\nprefix: /RetryPolicyTest-retry/\\nservice: retrypolicytest-http\\ntimeout_ms: 3000\\nretry_policy:\\n retry_on: \\\"5xx\\\"\\n num_retries: 4\\nambassador_id: retrypolicytest\\n\\n---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n retry_policy:\\n retry_on: \\\"retriable-4xx\\\"\\n num_retries: 4\\nambassador_id: retrypolicytest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"retrypolicytest\",\"scope\":\"AmbassadorTest\"},\"name\":\"retrypolicytest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"retrypolicytest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:58Z", + "creationTimestamp": "2020-02-19T23:21:52Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "retrypolicytest", @@ -31,24 +31,24 @@ }, "name": "retrypolicytest", "namespace": "default", - "resourceVersion": "38431", + "resourceVersion": "57785", "selfLink": "/api/v1/namespaces/default/services/retrypolicytest", - "uid": "3cab891c-4794-11ea-829a-062d8f98984d" + "uid": "9c53a150-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.70.83", + "clusterIP": "10.98.92.224", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31058, + "nodePort": 32548, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32331, + "nodePort": 31044, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"retrypolicytest\",\"scope\":\"AmbassadorTest\",\"service\":\"retrypolicytest-admin\"},\"name\":\"retrypolicytest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"retrypolicytest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"retrypolicytest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:59Z", + "creationTimestamp": "2020-02-19T23:21:53Z", "labels": { "kat-ambassador-id": "retrypolicytest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "retrypolicytest-admin", "namespace": "default", - "resourceVersion": "38443", + "resourceVersion": "57795", "selfLink": "/api/v1/namespaces/default/services/retrypolicytest-admin", - "uid": "3d36e647-4794-11ea-829a-062d8f98984d" + "uid": "9d26c8be-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.211.182", + "clusterIP": "10.100.41.202", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "retrypolicytest-admin", - "nodePort": 30000, + "nodePort": 30916, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -110,33 +110,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"retrypolicytest\",\"scope\":\"AmbassadorTest\"},\"name\":\"retrypolicytest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8134},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8497}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"retrypolicytest\",\"scope\":\"AmbassadorTest\"},\"name\":\"retrypolicytest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8136},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8499}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:21:02Z", + "creationTimestamp": "2020-02-19T23:21:55Z", "labels": { "kat-ambassador-id": "retrypolicytest", "scope": "AmbassadorTest" }, "name": "retrypolicytest-http", "namespace": "default", - "resourceVersion": "38461", + "resourceVersion": "57810", "selfLink": "/api/v1/namespaces/default/services/retrypolicytest-http", - "uid": "3efec986-4794-11ea-829a-062d8f98984d" + "uid": "9e363477-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.216.226", + "clusterIP": "10.105.151.74", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8134 + "targetPort": 8136 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8497 + "targetPort": 8499 } ], "selector": { diff --git a/python/tests/gold/saferegexmapping/bootstrap-ads.json b/python/tests/gold/saferegexmapping/bootstrap-ads.json index 5839f65c96..0dfb0d4892 100644 --- a/python/tests/gold/saferegexmapping/bootstrap-ads.json +++ b/python/tests/gold/saferegexmapping/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "saferegexmapping-default", "id": "test-id" diff --git a/python/tests/gold/saferegexmapping/snapshots/econf.json b/python/tests/gold/saferegexmapping/snapshots/econf.json index 879fe11707..2a7d6bf3d3 100644 --- a/python/tests/gold/saferegexmapping/snapshots/econf.json +++ b/python/tests/gold/saferegexmapping/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -332,15 +348,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/saferegexmapping/snapshots/snapshot.yaml b/python/tests/gold/saferegexmapping/snapshots/snapshot.yaml index 2d0c42f685..48978cf78d 100644 --- a/python/tests/gold/saferegexmapping/snapshots/snapshot.yaml +++ b/python/tests/gold/saferegexmapping/snapshots/snapshot.yaml @@ -22,7 +22,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"saferegexmapping\",\"scope\":\"AmbassadorTest\",\"service\":\"saferegexmapping-admin\"},\"name\":\"saferegexmapping-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"saferegexmapping-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"saferegexmapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "kat-ambassador-id": "saferegexmapping", "scope": "AmbassadorTest", @@ -30,17 +30,17 @@ }, "name": "saferegexmapping-admin", "namespace": "default", - "resourceVersion": "36085", + "resourceVersion": "55175", "selfLink": "/api/v1/namespaces/default/services/saferegexmapping-admin", - "uid": "0a8e5c30-4794-11ea-829a-062d8f98984d" + "uid": "56c35c28-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.105.174", + "clusterIP": "10.110.134.171", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "saferegexmapping-admin", - "nodePort": 31403, + "nodePort": 30790, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -63,19 +63,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"saferegexmapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"saferegexmapping-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8082},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8445}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "kat-ambassador-id": "saferegexmapping", "scope": "AmbassadorTest" }, "name": "saferegexmapping-http", "namespace": "default", - "resourceVersion": "36093", + "resourceVersion": "55182", "selfLink": "/api/v1/namespaces/default/services/saferegexmapping-http", - "uid": "0a9ee983-4794-11ea-829a-062d8f98984d" + "uid": "56d0e3e8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.195.88", + "clusterIP": "10.110.171.23", "ports": [ { "name": "http", @@ -108,7 +108,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Mapping\nname: SafeRegexMapping\nprefix: /SafeRegexMapping/\nprefix_regex: true\nhost: \"[a-zA-Z].*\"\nhost_regex: true\nregex_headers:\n X-Foo: \"^[a-z].*\"\nservice: http://saferegexmapping-http\nambassador_id: saferegexmapping\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: SafeRegexMapping\\nprefix: /SafeRegexMapping/\\nprefix_regex: true\\nhost: \\\"[a-zA-Z].*\\\"\\nhost_regex: true\\nregex_headers:\\n X-Foo: \\\"^[a-z].*\\\"\\nservice: http://saferegexmapping-http\\nambassador_id: saferegexmapping\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"saferegexmapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"saferegexmapping\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"saferegexmapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "saferegexmapping", @@ -116,24 +116,24 @@ }, "name": "saferegexmapping", "namespace": "default", - "resourceVersion": "36081", + "resourceVersion": "55171", "selfLink": "/api/v1/namespaces/default/services/saferegexmapping", - "uid": "0a86b0a0-4794-11ea-829a-062d8f98984d" + "uid": "56bc01ff-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.154.8", + "clusterIP": "10.111.131.228", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32566, + "nodePort": 31811, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30096, + "nodePort": 31728, "port": 443, "protocol": "TCP", "targetPort": 8443 diff --git a/python/tests/gold/servernametest/bootstrap-ads.json b/python/tests/gold/servernametest/bootstrap-ads.json index bc89038a26..7292b42961 100644 --- a/python/tests/gold/servernametest/bootstrap-ads.json +++ b/python/tests/gold/servernametest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "servernametest-default", "id": "test-id" diff --git a/python/tests/gold/servernametest/snapshots/econf.json b/python/tests/gold/servernametest/snapshots/econf.json index 3149e609a9..801c3d0d4b 100644 --- a/python/tests/gold/servernametest/snapshots/econf.json +++ b/python/tests/gold/servernametest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -284,15 +300,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/servernametest/snapshots/snapshot.yaml b/python/tests/gold/servernametest/snapshots/snapshot.yaml index 922a33325b..4b24efbfe1 100644 --- a/python/tests/gold/servernametest/snapshots/snapshot.yaml +++ b/python/tests/gold/servernametest/snapshots/snapshot.yaml @@ -20,40 +20,45 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\"},\"name\":\"servernametest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n server_name: \"test-server\"\nambassador_id: servernametest\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: servernametest/server-name\nprefix: /server-name\nservice: servernametest-http\nambassador_id: servernametest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n server_name: \\\"test-server\\\"\\nambassador_id: servernametest\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: servernametest/server-name\\nprefix: /server-name\\nservice: servernametest-http\\nambassador_id: servernametest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\"},\"name\":\"servernametest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"servernametest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "servernametest", "scope": "AmbassadorTest" }, - "name": "servernametest-http", + "name": "servernametest", "namespace": "default", - "resourceVersion": "36068", - "selfLink": "/api/v1/namespaces/default/services/servernametest-http", - "uid": "0a698095-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55147", + "selfLink": "/api/v1/namespaces/default/services/servernametest", + "uid": "568a984a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.102.105", + "clusterIP": "10.104.235.77", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 31496, "port": 80, "protocol": "TCP", - "targetPort": 8081 + "targetPort": 8080 }, { "name": "https", + "nodePort": 31277, "port": 443, "protocol": "TCP", - "targetPort": 8444 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "servernametest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -64,38 +69,30 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n server_name: \"test-server\"\nambassador_id: servernametest\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: servernametest/server-name\nprefix: /server-name\nservice: servernametest-http\nambassador_id: servernametest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n server_name: \\\"test-server\\\"\\nambassador_id: servernametest\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: servernametest/server-name\\nprefix: /server-name\\nservice: servernametest-http\\nambassador_id: servernametest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\"},\"name\":\"servernametest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"servernametest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\",\"service\":\"servernametest-admin\"},\"name\":\"servernametest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"servernametest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"servernametest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "servernametest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "servernametest-admin" }, - "name": "servernametest", + "name": "servernametest-admin", "namespace": "default", - "resourceVersion": "36057", - "selfLink": "/api/v1/namespaces/default/services/servernametest", - "uid": "0a531fe1-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55151", + "selfLink": "/api/v1/namespaces/default/services/servernametest-admin", + "uid": "5691662b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.106.184", + "clusterIP": "10.96.157.210", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 31990, - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "nodePort": 31597, - "port": 443, + "name": "servernametest-admin", + "nodePort": 30030, + "port": 8877, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8877 } ], "selector": { @@ -113,37 +110,40 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\",\"service\":\"servernametest-admin\"},\"name\":\"servernametest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"servernametest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"servernametest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"servernametest\",\"scope\":\"AmbassadorTest\"},\"name\":\"servernametest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "kat-ambassador-id": "servernametest", - "scope": "AmbassadorTest", - "service": "servernametest-admin" + "scope": "AmbassadorTest" }, - "name": "servernametest-admin", + "name": "servernametest-http", "namespace": "default", - "resourceVersion": "36061", - "selfLink": "/api/v1/namespaces/default/services/servernametest-admin", - "uid": "0a5c82c8-4794-11ea-829a-062d8f98984d" + "resourceVersion": "55158", + "selfLink": "/api/v1/namespaces/default/services/servernametest-http", + "uid": "569f60ed-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.191.10", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.101.41.232", "ports": [ { - "name": "servernametest-admin", - "nodePort": 30377, - "port": 8877, + "name": "http", + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8081 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8444 } ], "selector": { - "service": "servernametest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/tcpmappingtest/bootstrap-ads.json b/python/tests/gold/tcpmappingtest/bootstrap-ads.json index 542258ceb8..9cd26f4d18 100644 --- a/python/tests/gold/tcpmappingtest/bootstrap-ads.json +++ b/python/tests/gold/tcpmappingtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tcpmappingtest-tcp-namespace", "id": "test-id" diff --git a/python/tests/gold/tcpmappingtest/snapshots/econf.json b/python/tests/gold/tcpmappingtest/snapshots/econf.json index f9e06cb6a1..8be80d68a4 100644 --- a/python/tests/gold/tcpmappingtest/snapshots/econf.json +++ b/python/tests/gold/tcpmappingtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -107,8 +120,12 @@ ] }, "name": "cluster_tcpmappingtest_http_target2_othe-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" }, @@ -137,18 +154,22 @@ ] }, "name": "cluster_tcpmappingtest_http_target2_othe-1", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/tcp-namespace/secrets-decoded/supersecret/4CB5C4C15C3BBBF727E8572838933519EA42D103.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/tcp-namespace/secrets-decoded/supersecret/4CB5C4C15C3BBBF727E8572838933519EA42D103.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/tcp-namespace/secrets-decoded/supersecret/4CB5C4C15C3BBBF727E8572838933519EA42D103.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/tcp-namespace/secrets-decoded/supersecret/4CB5C4C15C3BBBF727E8572838933519EA42D103.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -178,8 +199,12 @@ ] }, "name": "cluster_tcpmappingtest_http_target3_tcp_-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" } @@ -200,14 +225,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -313,8 +341,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -342,14 +369,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -455,8 +485,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -484,14 +513,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -597,8 +629,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -624,7 +655,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { diff --git a/python/tests/gold/tcpmappingtest/snapshots/snapshot.yaml b/python/tests/gold/tcpmappingtest/snapshots/snapshot.yaml index 2f3ffbc561..a696bc04ff 100644 --- a/python/tests/gold/tcpmappingtest/snapshots/snapshot.yaml +++ b/python/tests/gold/tcpmappingtest/snapshots/snapshot.yaml @@ -26,66 +26,21 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"supersecret\",\"namespace\":\"tcp-namespace\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:10Z", + "creationTimestamp": "2020-02-19T23:20:37Z", "labels": { "kat-ambassador-id": "tcpmappingtest", "scope": "AmbassadorTest" }, "name": "supersecret", "namespace": "tcp-namespace", - "resourceVersion": "37639", + "resourceVersion": "56782", "selfLink": "/api/v1/namespaces/tcp-namespace/secrets/supersecret", - "uid": "200a400b-4794-11ea-829a-062d8f98984d" + "uid": "6fc73e5b-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } ], "service": [ - { - "apiVersion": "v1", - "kind": "Service", - "metadata": { - "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest\nport: 9876\nservice: tcpmappingtest-http-target1.tcp-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-local-only\naddress: 127.0.0.1\nport: 8765\nservice: tcpmappingtest-http-target1.tcp-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-clear-to-tls\nport: 7654\ntls: true\nservice: tcpmappingtest-http-target2.other-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-1\nport: 6789\nhost: tls-context-host-1\nservice: tcpmappingtest-http-target1.tcp-namespace:80\nambassador_id: tcpmappingtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest\\nport: 9876\\nservice: tcpmappingtest-http-target1.tcp-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-local-only\\naddress: 127.0.0.1\\nport: 8765\\nservice: tcpmappingtest-http-target1.tcp-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-clear-to-tls\\nport: 7654\\ntls: true\\nservice: tcpmappingtest-http-target2.other-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-1\\nport: 6789\\nhost: tls-context-host-1\\nservice: tcpmappingtest-http-target1.tcp-namespace:80\\nambassador_id: tcpmappingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tcpmappingtest-http-target1\",\"namespace\":\"tcp-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-tcp-namespace\"}}}\n" - }, - "creationTimestamp": "2020-02-04T21:20:12Z", - "labels": { - "kat-ambassador-id": "tcpmappingtest", - "scope": "AmbassadorTest" - }, - "name": "tcpmappingtest-http-target1", - "namespace": "tcp-namespace", - "resourceVersion": "37673", - "selfLink": "/api/v1/namespaces/tcp-namespace/services/tcpmappingtest-http-target1", - "uid": "20fc70ab-4794-11ea-829a-062d8f98984d" - }, - "spec": { - "clusterIP": "10.96.241.73", - "ports": [ - { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8080 - }, - { - "name": "https", - "port": 443, - "protocol": "TCP", - "targetPort": 8443 - } - ], - "selector": { - "backend": "superpod-tcp-namespace" - }, - "sessionAffinity": "None", - "type": "ClusterIP" - }, - "status": { - "loadBalancer": {} - } - }, { "apiVersion": "v1", "kind": "Service", @@ -94,19 +49,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-3\nport: 6789\nhost: tls-context-host-3\nservice: tcpmappingtest-http-target3.tcp-namespace\ntls: true\nambassador_id: tcpmappingtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-3\\nport: 6789\\nhost: tls-context-host-3\\nservice: tcpmappingtest-http-target3.tcp-namespace\\ntls: true\\nambassador_id: tcpmappingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tcpmappingtest-http-target3\",\"namespace\":\"tcp-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8081},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8444}],\"selector\":{\"backend\":\"superpod-tcp-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:13Z", + "creationTimestamp": "2020-02-19T23:20:40Z", "labels": { "kat-ambassador-id": "tcpmappingtest", "scope": "AmbassadorTest" }, "name": "tcpmappingtest-http-target3", "namespace": "tcp-namespace", - "resourceVersion": "37688", + "resourceVersion": "56852", "selfLink": "/api/v1/namespaces/tcp-namespace/services/tcpmappingtest-http-target3", - "uid": "21c19ede-4794-11ea-829a-062d8f98984d" + "uid": "71ceba2b-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.230.1", + "clusterIP": "10.109.45.159", "ports": [ { "name": "http", @@ -139,19 +94,19 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-2\nport: 6789\nhost: tls-context-host-2\nservice: tcpmappingtest-http-target2.other-namespace\ntls: TCPMappingTest-tlscontext\nambassador_id: tcpmappingtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-2\\nport: 6789\\nhost: tls-context-host-2\\nservice: tcpmappingtest-http-target2.other-namespace\\ntls: TCPMappingTest-tlscontext\\nambassador_id: tcpmappingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tcpmappingtest-http-target2\",\"namespace\":\"other-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-other-namespace\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:12Z", + "creationTimestamp": "2020-02-19T23:20:40Z", "labels": { "kat-ambassador-id": "tcpmappingtest", "scope": "AmbassadorTest" }, "name": "tcpmappingtest-http-target2", "namespace": "other-namespace", - "resourceVersion": "37679", + "resourceVersion": "56846", "selfLink": "/api/v1/namespaces/other-namespace/services/tcpmappingtest-http-target2", - "uid": "2139db61-4794-11ea-829a-062d8f98984d" + "uid": "71bd948a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.110.167.198", + "clusterIP": "10.96.209.147", "ports": [ { "name": "http", @@ -184,7 +139,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TCPMappingTest-tlscontext\nhosts:\n- tls-context-host-1\n- tls-context-host-2\n- tls-context-host-3\nsecret: supersecret\nambassador_id: tcpmappingtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TCPMappingTest-tlscontext\\nhosts:\\n- tls-context-host-1\\n- tls-context-host-2\\n- tls-context-host-3\\nsecret: supersecret\\nambassador_id: tcpmappingtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tcpmappingtest\",\"namespace\":\"tcp-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443},{\"name\":\"extra-6789\",\"port\":6789,\"protocol\":\"TCP\",\"targetPort\":6789},{\"name\":\"extra-7654\",\"port\":7654,\"protocol\":\"TCP\",\"targetPort\":7654},{\"name\":\"extra-8765\",\"port\":8765,\"protocol\":\"TCP\",\"targetPort\":8765},{\"name\":\"extra-9876\",\"port\":9876,\"protocol\":\"TCP\",\"targetPort\":9876}],\"selector\":{\"service\":\"tcpmappingtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:11Z", + "creationTimestamp": "2020-02-19T23:20:38Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tcpmappingtest", @@ -192,52 +147,52 @@ }, "name": "tcpmappingtest", "namespace": "tcp-namespace", - "resourceVersion": "37660", + "resourceVersion": "56812", "selfLink": "/api/v1/namespaces/tcp-namespace/services/tcpmappingtest", - "uid": "20937879-4794-11ea-829a-062d8f98984d" + "uid": "709d2698-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.227.167", + "clusterIP": "10.102.252.141", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32333, + "nodePort": 31979, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32522, + "nodePort": 32072, "port": 443, "protocol": "TCP", "targetPort": 8443 }, { "name": "extra-6789", - "nodePort": 30945, + "nodePort": 32478, "port": 6789, "protocol": "TCP", "targetPort": 6789 }, { "name": "extra-7654", - "nodePort": 30670, + "nodePort": 31086, "port": 7654, "protocol": "TCP", "targetPort": 7654 }, { "name": "extra-8765", - "nodePort": 30389, + "nodePort": 30750, "port": 8765, "protocol": "TCP", "targetPort": 8765 }, { "name": "extra-9876", - "nodePort": 32122, + "nodePort": 32743, "port": 9876, "protocol": "TCP", "targetPort": 9876 @@ -260,7 +215,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\",\"service\":\"tcpmappingtest-admin\"},\"name\":\"tcpmappingtest-admin\",\"namespace\":\"tcp-namespace\"},\"spec\":{\"ports\":[{\"name\":\"tcpmappingtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tcpmappingtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:11Z", + "creationTimestamp": "2020-02-19T23:20:39Z", "labels": { "kat-ambassador-id": "tcpmappingtest", "scope": "AmbassadorTest", @@ -268,17 +223,17 @@ }, "name": "tcpmappingtest-admin", "namespace": "tcp-namespace", - "resourceVersion": "37664", + "resourceVersion": "56823", "selfLink": "/api/v1/namespaces/tcp-namespace/services/tcpmappingtest-admin", - "uid": "20a4a307-4794-11ea-829a-062d8f98984d" + "uid": "7105972f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.84.73", + "clusterIP": "10.103.235.118", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tcpmappingtest-admin", - "nodePort": 30260, + "nodePort": 31444, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -293,6 +248,51 @@ "status": { "loadBalancer": {} } + }, + { + "apiVersion": "v1", + "kind": "Service", + "metadata": { + "annotations": { + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest\nport: 9876\nservice: tcpmappingtest-http-target1.tcp-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-local-only\naddress: 127.0.0.1\nport: 8765\nservice: tcpmappingtest-http-target1.tcp-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-clear-to-tls\nport: 7654\ntls: true\nservice: tcpmappingtest-http-target2.other-namespace:443\nambassador_id: tcpmappingtest\n---\napiVersion: ambassador/v1\nkind: TCPMapping\nname: TCPMappingTest-1\nport: 6789\nhost: tls-context-host-1\nservice: tcpmappingtest-http-target1.tcp-namespace:80\nambassador_id: tcpmappingtest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest\\nport: 9876\\nservice: tcpmappingtest-http-target1.tcp-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-local-only\\naddress: 127.0.0.1\\nport: 8765\\nservice: tcpmappingtest-http-target1.tcp-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-clear-to-tls\\nport: 7654\\ntls: true\\nservice: tcpmappingtest-http-target2.other-namespace:443\\nambassador_id: tcpmappingtest\\n---\\napiVersion: ambassador/v1\\nkind: TCPMapping\\nname: TCPMappingTest-1\\nport: 6789\\nhost: tls-context-host-1\\nservice: tcpmappingtest-http-target1.tcp-namespace:80\\nambassador_id: tcpmappingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tcpmappingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tcpmappingtest-http-target1\",\"namespace\":\"tcp-namespace\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"superpod-tcp-namespace\"}}}\n" + }, + "creationTimestamp": "2020-02-19T23:20:40Z", + "labels": { + "kat-ambassador-id": "tcpmappingtest", + "scope": "AmbassadorTest" + }, + "name": "tcpmappingtest-http-target1", + "namespace": "tcp-namespace", + "resourceVersion": "56837", + "selfLink": "/api/v1/namespaces/tcp-namespace/services/tcpmappingtest-http-target1", + "uid": "715904cd-536e-11ea-85dd-167682b5c255" + }, + "spec": { + "clusterIP": "10.108.26.165", + "ports": [ + { + "name": "http", + "port": 80, + "protocol": "TCP", + "targetPort": 8080 + }, + { + "name": "https", + "port": 443, + "protocol": "TCP", + "targetPort": 8443 + } + ], + "selector": { + "backend": "superpod-tcp-namespace" + }, + "sessionAffinity": "None", + "type": "ClusterIP" + }, + "status": { + "loadBalancer": {} + } } ] } diff --git a/python/tests/gold/tls/bootstrap-ads.json b/python/tests/gold/tls/bootstrap-ads.json index 2908da306b..7f40940e05 100644 --- a/python/tests/gold/tls/bootstrap-ads.json +++ b/python/tests/gold/tls/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tls-default", "id": "test-id" diff --git a/python/tests/gold/tls/snapshots/econf.json b/python/tests/gold/tls/snapshots/econf.json index 7aef66d13d..6ea90472f3 100644 --- a/python/tests/gold/tls/snapshots/econf.json +++ b/python/tests/gold/tls/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -210,8 +226,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -237,7 +252,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tls/snapshots/snapshot.yaml b/python/tests/gold/tls/snapshots/snapshot.yaml index 6366fbd78e..09df623ad1 100644 --- a/python/tests/gold/tls/snapshots/snapshot.yaml +++ b/python/tests/gold/tls/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tls\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tls-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:20Z", + "creationTimestamp": "2020-02-19T23:20:50Z", "labels": { "kat-ambassador-id": "tls", "scope": "AmbassadorTest" }, "name": "test-tls-secret", "namespace": "default", - "resourceVersion": "37821", + "resourceVersion": "57043", "selfLink": "/api/v1/namespaces/default/secrets/test-tls-secret", - "uid": "25c9c551-4794-11ea-829a-062d8f98984d" + "uid": "77b21fcc-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: tls\nambassador_id: tls\nconfig:\n server:\n enabled: True\n secret: test-tls-secret\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: tls\\nambassador_id: tls\\nconfig:\\n server:\\n enabled: True\\n secret: test-tls-secret\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tls\",\"scope\":\"AmbassadorTest\"},\"name\":\"tls\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tls\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:19Z", + "creationTimestamp": "2020-02-19T23:20:50Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tls", @@ -57,24 +57,24 @@ }, "name": "tls", "namespace": "default", - "resourceVersion": "37807", + "resourceVersion": "57030", "selfLink": "/api/v1/namespaces/default/services/tls", - "uid": "259971ef-4794-11ea-829a-062d8f98984d" + "uid": "774f39b5-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.221.211", + "clusterIP": "10.97.0.185", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31175, + "nodePort": 32213, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32650, + "nodePort": 30476, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tls\",\"scope\":\"AmbassadorTest\",\"service\":\"tls-admin\"},\"name\":\"tls-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tls-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tls\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:20Z", + "creationTimestamp": "2020-02-19T23:20:50Z", "labels": { "kat-ambassador-id": "tls", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "tls-admin", "namespace": "default", - "resourceVersion": "37811", + "resourceVersion": "57036", "selfLink": "/api/v1/namespaces/default/services/tls-admin", - "uid": "25a6398d-4794-11ea-829a-062d8f98984d" + "uid": "7790a727-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.15.131", + "clusterIP": "10.97.8.26", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tls-admin", - "nodePort": 31052, + "nodePort": 32019, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -137,33 +137,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: tls-http\nambassador_id: tls\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: tls-http\\nambassador_id: tls\\n\"},\"labels\":{\"kat-ambassador-id\":\"tls\",\"scope\":\"AmbassadorTest\"},\"name\":\"tls-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8124},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8487}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: tls-http\\nambassador_id: tls\\n\"},\"labels\":{\"kat-ambassador-id\":\"tls\",\"scope\":\"AmbassadorTest\"},\"name\":\"tls-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8125},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8488}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:20Z", + "creationTimestamp": "2020-02-19T23:20:51Z", "labels": { "kat-ambassador-id": "tls", "scope": "AmbassadorTest" }, "name": "tls-http", "namespace": "default", - "resourceVersion": "37827", + "resourceVersion": "57052", "selfLink": "/api/v1/namespaces/default/services/tls-http", - "uid": "25f8b92f-4794-11ea-829a-062d8f98984d" + "uid": "78147920-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.46.40", + "clusterIP": "10.107.81.105", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8124 + "targetPort": 8125 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8487 + "targetPort": 8488 } ], "selector": { diff --git a/python/tests/gold/tlscontextciphersuites/bootstrap-ads.json b/python/tests/gold/tlscontextciphersuites/bootstrap-ads.json index 0fe6195e72..34f0b90a48 100644 --- a/python/tests/gold/tlscontextciphersuites/bootstrap-ads.json +++ b/python/tests/gold/tlscontextciphersuites/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlscontextciphersuites-default", "id": "test-id" diff --git a/python/tests/gold/tlscontextciphersuites/snapshots/econf.json b/python/tests/gold/tlscontextciphersuites/snapshots/econf.json index b0bca91dcd..739ab5f919 100644 --- a/python/tests/gold/tlscontextciphersuites/snapshots/econf.json +++ b/python/tests/gold/tlscontextciphersuites/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -53,8 +66,12 @@ ] }, "name": "cluster_https___tlscontextciphersuites_http_otls_default", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" } @@ -75,14 +92,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -217,8 +237,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -253,7 +272,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlscontextciphersuites/snapshots/snapshot.yaml b/python/tests/gold/tlscontextciphersuites/snapshots/snapshot.yaml index 324067846e..45891ad312 100644 --- a/python/tests/gold/tlscontextciphersuites/snapshots/snapshot.yaml +++ b/python/tests/gold/tlscontextciphersuites/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\"},\"name\":\"secret.cipher-suites\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:39Z", + "creationTimestamp": "2020-02-19T23:21:13Z", "labels": { "kat-ambassador-id": "tlscontextciphersuites", "scope": "AmbassadorTest" }, "name": "secret.cipher-suites", "namespace": "default", - "resourceVersion": "38172", + "resourceVersion": "57392", "selfLink": "/api/v1/namespaces/default/secrets/secret.cipher-suites", - "uid": "3186d02c-4794-11ea-829a-062d8f98984d" + "uid": "8502b043-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -46,30 +46,38 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextciphersuites-admin\"},\"name\":\"tlscontextciphersuites-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextciphersuites-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextciphersuites\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextCipherSuites-same-prefix-1\nprefix: /tls-context-same/\nservice: https://tlscontextciphersuites-http\nhost: tls-context-host-1\nambassador_id: tlscontextciphersuites\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextCipherSuites-same-context-1\nhosts:\n- tls-context-host-1\nsecret: secret.cipher-suites\nsecret_namespacing: False\nmax_tls_version: v1.2\ncipher_suites:\n- ECDHE-RSA-AES128-GCM-SHA256\necdh_curves:\n- P-256\nambassador_id: tlscontextciphersuites\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextCipherSuites-same-prefix-1\\nprefix: /tls-context-same/\\nservice: https://tlscontextciphersuites-http\\nhost: tls-context-host-1\\nambassador_id: tlscontextciphersuites\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextCipherSuites-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: secret.cipher-suites\\nsecret_namespacing: False\\nmax_tls_version: v1.2\\ncipher_suites:\\n- ECDHE-RSA-AES128-GCM-SHA256\\necdh_curves:\\n- P-256\\nambassador_id: tlscontextciphersuites\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextciphersuites\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextciphersuites\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:39Z", + "creationTimestamp": "2020-02-19T23:21:11Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextciphersuites", - "scope": "AmbassadorTest", - "service": "tlscontextciphersuites-admin" + "scope": "AmbassadorTest" }, - "name": "tlscontextciphersuites-admin", + "name": "tlscontextciphersuites", "namespace": "default", - "resourceVersion": "38162", - "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites-admin", - "uid": "3165cc8b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57371", + "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites", + "uid": "83d58d30-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.111.23", + "clusterIP": "10.106.76.37", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "tlscontextciphersuites-admin", - "nodePort": 31469, - "port": 8877, + "name": "http", + "nodePort": 31185, + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "nodePort": 31003, + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { @@ -87,40 +95,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextciphersuites-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8130},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8493}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextciphersuites-admin\"},\"name\":\"tlscontextciphersuites-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextciphersuites-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextciphersuites\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:40Z", + "creationTimestamp": "2020-02-19T23:21:12Z", "labels": { "kat-ambassador-id": "tlscontextciphersuites", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "tlscontextciphersuites-admin" }, - "name": "tlscontextciphersuites-http", + "name": "tlscontextciphersuites-admin", "namespace": "default", - "resourceVersion": "38176", - "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites-http", - "uid": "31caa7d3-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57384", + "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites-admin", + "uid": "845c90d3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.248.84", + "clusterIP": "10.97.43.77", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8130 - }, - { - "name": "https", - "port": 443, + "name": "tlscontextciphersuites-admin", + "nodePort": 32331, + "port": 8877, "protocol": "TCP", - "targetPort": 8493 + "targetPort": 8877 } ], "selector": { - "backend": "superpod-default" + "service": "tlscontextciphersuites" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -131,45 +136,40 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextCipherSuites-same-prefix-1\nprefix: /tls-context-same/\nservice: https://tlscontextciphersuites-http\nhost: tls-context-host-1\nambassador_id: tlscontextciphersuites\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextCipherSuites-same-context-1\nhosts:\n- tls-context-host-1\nsecret: secret.cipher-suites\nsecret_namespacing: False\nmax_tls_version: v1.2\ncipher_suites:\n- ECDHE-RSA-AES128-GCM-SHA256\necdh_curves:\n- P-256\nambassador_id: tlscontextciphersuites\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextCipherSuites-same-prefix-1\\nprefix: /tls-context-same/\\nservice: https://tlscontextciphersuites-http\\nhost: tls-context-host-1\\nambassador_id: tlscontextciphersuites\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextCipherSuites-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: secret.cipher-suites\\nsecret_namespacing: False\\nmax_tls_version: v1.2\\ncipher_suites:\\n- ECDHE-RSA-AES128-GCM-SHA256\\necdh_curves:\\n- P-256\\nambassador_id: tlscontextciphersuites\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextciphersuites\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextciphersuites\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextciphersuites\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextciphersuites-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8131},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8494}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:39Z", + "creationTimestamp": "2020-02-19T23:21:13Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextciphersuites", "scope": "AmbassadorTest" }, - "name": "tlscontextciphersuites", + "name": "tlscontextciphersuites-http", "namespace": "default", - "resourceVersion": "38158", - "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites", - "uid": "3159571c-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57396", + "selfLink": "/api/v1/namespaces/default/services/tlscontextciphersuites-http", + "uid": "85615542-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.168.242", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.105.223.174", "ports": [ { "name": "http", - "nodePort": 32632, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8131 }, { "name": "https", - "nodePort": 30855, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8494 } ], "selector": { - "service": "tlscontextciphersuites" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/tlscontextprotocolmaxversion/bootstrap-ads.json b/python/tests/gold/tlscontextprotocolmaxversion/bootstrap-ads.json index 4faae470fb..349535f68b 100644 --- a/python/tests/gold/tlscontextprotocolmaxversion/bootstrap-ads.json +++ b/python/tests/gold/tlscontextprotocolmaxversion/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlscontextprotocolmaxversion-default", "id": "test-id" diff --git a/python/tests/gold/tlscontextprotocolmaxversion/snapshots/econf.json b/python/tests/gold/tlscontextprotocolmaxversion/snapshots/econf.json index 60d71e88d0..3d7aceeac5 100644 --- a/python/tests/gold/tlscontextprotocolmaxversion/snapshots/econf.json +++ b/python/tests/gold/tlscontextprotocolmaxversion/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -72,14 +85,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -214,8 +230,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -245,7 +260,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlscontextprotocolmaxversion/snapshots/snapshot.yaml b/python/tests/gold/tlscontextprotocolmaxversion/snapshots/snapshot.yaml index 25b7c05e3c..2d1a3aa2d2 100644 --- a/python/tests/gold/tlscontextprotocolmaxversion/snapshots/snapshot.yaml +++ b/python/tests/gold/tlscontextprotocolmaxversion/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolmaxversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"secret.max-version\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:34Z", + "creationTimestamp": "2020-02-19T23:21:02Z", "labels": { "kat-ambassador-id": "tlscontextprotocolmaxversion", "scope": "AmbassadorTest" }, "name": "secret.max-version", "namespace": "default", - "resourceVersion": "38064", + "resourceVersion": "57263", "selfLink": "/api/v1/namespaces/default/secrets/secret.max-version", - "uid": "2e5ecdf8-4794-11ea-829a-062d8f98984d" + "uid": "7ea15f2b-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: ambassador\nconfig:\n defaults:\n tls_secret_namespacing: False\nambassador_id: tlscontextprotocolmaxversion\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextProtocolMaxVersion-same-prefix-1\nprefix: /tls-context-same/\nservice: http://tlscontextprotocolmaxversion-http\nhost: tls-context-host-1\nambassador_id: tlscontextprotocolmaxversion\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextProtocolMaxVersion-same-context-1\nhosts:\n- tls-context-host-1\nsecret: secret.max-version\nmin_tls_version: v1.1\nmax_tls_version: v1.2\nambassador_id: tlscontextprotocolmaxversion\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: ambassador\\nconfig:\\n defaults:\\n tls_secret_namespacing: False\\nambassador_id: tlscontextprotocolmaxversion\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextProtocolMaxVersion-same-prefix-1\\nprefix: /tls-context-same/\\nservice: http://tlscontextprotocolmaxversion-http\\nhost: tls-context-host-1\\nambassador_id: tlscontextprotocolmaxversion\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextProtocolMaxVersion-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: secret.max-version\\nmin_tls_version: v1.1\\nmax_tls_version: v1.2\\nambassador_id: tlscontextprotocolmaxversion\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextprotocolmaxversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolmaxversion\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextprotocolmaxversion\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:33Z", + "creationTimestamp": "2020-02-19T23:21:01Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextprotocolmaxversion", @@ -57,24 +57,24 @@ }, "name": "tlscontextprotocolmaxversion", "namespace": "default", - "resourceVersion": "38043", + "resourceVersion": "57245", "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolmaxversion", - "uid": "2dba56db-4794-11ea-829a-062d8f98984d" + "uid": "7dfb7f8e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.97.112.61", + "clusterIP": "10.111.43.62", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31997, + "nodePort": 30014, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31205, + "nodePort": 32560, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolmaxversion\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextprotocolmaxversion-admin\"},\"name\":\"tlscontextprotocolmaxversion-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextprotocolmaxversion-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextprotocolmaxversion\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:34Z", + "creationTimestamp": "2020-02-19T23:21:02Z", "labels": { "kat-ambassador-id": "tlscontextprotocolmaxversion", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "tlscontextprotocolmaxversion-admin", "namespace": "default", - "resourceVersion": "38052", + "resourceVersion": "57258", "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolmaxversion-admin", - "uid": "2e3301d4-4794-11ea-829a-062d8f98984d" + "uid": "7e6f13a1-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.105.250.28", + "clusterIP": "10.103.207.142", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tlscontextprotocolmaxversion-admin", - "nodePort": 31794, + "nodePort": 31035, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -136,33 +136,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolmaxversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolmaxversion-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8128},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8491}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolmaxversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolmaxversion-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8129},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8492}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:35Z", + "creationTimestamp": "2020-02-19T23:21:02Z", "labels": { "kat-ambassador-id": "tlscontextprotocolmaxversion", "scope": "AmbassadorTest" }, "name": "tlscontextprotocolmaxversion-http", "namespace": "default", - "resourceVersion": "38078", + "resourceVersion": "57270", "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolmaxversion-http", - "uid": "2efc0af5-4794-11ea-829a-062d8f98984d" + "uid": "7eed919c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.58.70", + "clusterIP": "10.109.212.247", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8128 + "targetPort": 8129 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8491 + "targetPort": 8492 } ], "selector": { diff --git a/python/tests/gold/tlscontextprotocolminversion/bootstrap-ads.json b/python/tests/gold/tlscontextprotocolminversion/bootstrap-ads.json index ca11b785f1..5011008d5a 100644 --- a/python/tests/gold/tlscontextprotocolminversion/bootstrap-ads.json +++ b/python/tests/gold/tlscontextprotocolminversion/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlscontextprotocolminversion-default", "id": "test-id" diff --git a/python/tests/gold/tlscontextprotocolminversion/snapshots/econf.json b/python/tests/gold/tlscontextprotocolminversion/snapshots/econf.json index 2d317697d6..faae44ff7d 100644 --- a/python/tests/gold/tlscontextprotocolminversion/snapshots/econf.json +++ b/python/tests/gold/tlscontextprotocolminversion/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -53,8 +66,12 @@ ] }, "name": "cluster_https___tlscontextprotocolminver-0", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" } @@ -75,14 +92,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -217,8 +237,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -248,7 +267,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlscontextprotocolminversion/snapshots/snapshot.yaml b/python/tests/gold/tlscontextprotocolminversion/snapshots/snapshot.yaml index dc9e8cef99..a5f4c106a6 100644 --- a/python/tests/gold/tlscontextprotocolminversion/snapshots/snapshot.yaml +++ b/python/tests/gold/tlscontextprotocolminversion/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"secret.min-version\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:38Z", + "creationTimestamp": "2020-02-19T23:21:07Z", "labels": { "kat-ambassador-id": "tlscontextprotocolminversion", "scope": "AmbassadorTest" }, "name": "secret.min-version", "namespace": "default", - "resourceVersion": "38122", + "resourceVersion": "57333", "selfLink": "/api/v1/namespaces/default/secrets/secret.min-version", - "uid": "3063700d-4794-11ea-829a-062d8f98984d" + "uid": "81656f2c-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -46,30 +46,38 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextprotocolminversion-admin\"},\"name\":\"tlscontextprotocolminversion-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextprotocolminversion-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextprotocolminversion\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextProtocolMinVersion-same-prefix-1\nprefix: /tls-context-same/\nservice: https://tlscontextprotocolminversion-http\nhost: tls-context-host-1\nambassador_id: tlscontextprotocolminversion\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextProtocolMinVersion-same-context-1\nhosts:\n- tls-context-host-1\nsecret: secret.min-version\nsecret_namespacing: False\nmin_tls_version: v1.2\nmax_tls_version: v1.3\nambassador_id: tlscontextprotocolminversion\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextProtocolMinVersion-same-prefix-1\\nprefix: /tls-context-same/\\nservice: https://tlscontextprotocolminversion-http\\nhost: tls-context-host-1\\nambassador_id: tlscontextprotocolminversion\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextProtocolMinVersion-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: secret.min-version\\nsecret_namespacing: False\\nmin_tls_version: v1.2\\nmax_tls_version: v1.3\\nambassador_id: tlscontextprotocolminversion\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolminversion\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextprotocolminversion\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:37Z", + "creationTimestamp": "2020-02-19T23:21:05Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextprotocolminversion", - "scope": "AmbassadorTest", - "service": "tlscontextprotocolminversion-admin" + "scope": "AmbassadorTest" }, - "name": "tlscontextprotocolminversion-admin", + "name": "tlscontextprotocolminversion", "namespace": "default", - "resourceVersion": "38109", - "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion-admin", - "uid": "2fede380-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57313", + "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion", + "uid": "8081f8ff-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.27.96", + "clusterIP": "10.96.105.97", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "tlscontextprotocolminversion-admin", - "nodePort": 32294, - "port": 8877, + "name": "http", + "nodePort": 31472, + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "nodePort": 30360, + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { @@ -87,40 +95,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolminversion-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8129},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8492}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextprotocolminversion-admin\"},\"name\":\"tlscontextprotocolminversion-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextprotocolminversion-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextprotocolminversion\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:38Z", + "creationTimestamp": "2020-02-19T23:21:06Z", "labels": { "kat-ambassador-id": "tlscontextprotocolminversion", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "tlscontextprotocolminversion-admin" }, - "name": "tlscontextprotocolminversion-http", + "name": "tlscontextprotocolminversion-admin", "namespace": "default", - "resourceVersion": "38129", - "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion-http", - "uid": "30848b68-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57322", + "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion-admin", + "uid": "810a61d6-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.132.170", + "clusterIP": "10.101.249.30", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8129 - }, - { - "name": "https", - "port": 443, + "name": "tlscontextprotocolminversion-admin", + "nodePort": 30367, + "port": 8877, "protocol": "TCP", - "targetPort": 8492 + "targetPort": 8877 } ], "selector": { - "backend": "superpod-default" + "service": "tlscontextprotocolminversion" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -131,45 +136,40 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextProtocolMinVersion-same-prefix-1\nprefix: /tls-context-same/\nservice: https://tlscontextprotocolminversion-http\nhost: tls-context-host-1\nambassador_id: tlscontextprotocolminversion\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextProtocolMinVersion-same-context-1\nhosts:\n- tls-context-host-1\nsecret: secret.min-version\nsecret_namespacing: False\nmin_tls_version: v1.2\nmax_tls_version: v1.3\nambassador_id: tlscontextprotocolminversion\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextProtocolMinVersion-same-prefix-1\\nprefix: /tls-context-same/\\nservice: https://tlscontextprotocolminversion-http\\nhost: tls-context-host-1\\nambassador_id: tlscontextprotocolminversion\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextProtocolMinVersion-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: secret.min-version\\nsecret_namespacing: False\\nmin_tls_version: v1.2\\nmax_tls_version: v1.3\\nambassador_id: tlscontextprotocolminversion\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolminversion\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextprotocolminversion\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextprotocolminversion\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextprotocolminversion-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8130},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8493}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:36Z", + "creationTimestamp": "2020-02-19T23:21:07Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextprotocolminversion", "scope": "AmbassadorTest" }, - "name": "tlscontextprotocolminversion", + "name": "tlscontextprotocolminversion-http", "namespace": "default", - "resourceVersion": "38101", - "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion", - "uid": "2f9ebd31-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57342", + "selfLink": "/api/v1/namespaces/default/services/tlscontextprotocolminversion-http", + "uid": "81c81940-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.87.163", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.106.176.11", "ports": [ { "name": "http", - "nodePort": 31873, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8130 }, { "name": "https", - "nodePort": 30066, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8493 } ], "selector": { - "service": "tlscontextprotocolminversion" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/tlscontextstest/bootstrap-ads.json b/python/tests/gold/tlscontextstest/bootstrap-ads.json index e840bb5145..b06ec76d96 100644 --- a/python/tests/gold/tlscontextstest/bootstrap-ads.json +++ b/python/tests/gold/tlscontextstest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlscontextstest-default", "id": "test-id" diff --git a/python/tests/gold/tlscontextstest/snapshots/econf.json b/python/tests/gold/tlscontextstest/snapshots/econf.json index 440bb47ed9..6ba0a57adc 100644 --- a/python/tests/gold/tlscontextstest/snapshots/econf.json +++ b/python/tests/gold/tlscontextstest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -284,15 +300,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlscontextstest/snapshots/snapshot.yaml b/python/tests/gold/tlscontextstest/snapshots/snapshot.yaml index 6ae4ba9258..efce2be444 100644 --- a/python/tests/gold/tlscontextstest/snapshots/snapshot.yaml +++ b/python/tests/gold/tlscontextstest/snapshots/snapshot.yaml @@ -25,16 +25,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR1RENDQXFDZ0F3SUJBZ0lKQUowWDU3ZXlwQk5UTUEwR0NTcUdTSWIzRFFFQkN3VUFNSEV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4R3pBWkJnTlZCQU1NRW0xaGMzUmxjaTVrCllYUmhkMmx5WlM1cGJ6QWVGdzB4T1RBeE1UQXhPVEF6TXpCYUZ3MHlOREF4TURreE9UQXpNekJhTUhFeEN6QUoKQmdOVkJBWVRBbFZUTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRSwpEQWhFWVhSaGQybHlaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEd6QVpCZ05WQkFNTUVtMWhjM1JsCmNpNWtZWFJoZDJseVpTNXBiekNDQVNJd0RRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFPdlEKVjVad1NmcmQ1Vndtelo5SmNoOTdyUW40OXA2b1FiNkVIWjF5T2EyZXZBNzE2NWpkMHFqS1BPMlgyRk80MVg4QgpwQWFLZExnMmltaC9wL2NXN2JncjNHNnRHVEZVMVZHanllTE1EV0Q1MGV2TTYydnpYOFRuYVV6ZFRHTjFOdTM2CnJaM2JnK0VLcjhFYjI1b2RabEpyMm1mNktSeDdTcjZzT1N4NlE1VHhSb3NycmZ0d0tjejI5cHZlMGQ4b0NiZGkKRFJPVlZjNXpBaW0zc2Nmd3VwRUJrQzYxdlpKMzhmaXYwRENYOVpna3BMdEZKUTllTEVQSEdKUGp5ZmV3alNTeQovbk52L21Sc2J6aUNtQ3R3Z3BmbFRtODljK3EzSWhvbUE1YXhZQVFjQ0NqOXBvNUhVZHJtSUJKR0xBTVZ5OWJ5CkZnZE50aFdBeHZCNHZmQXl4OXNDQXdFQUFhTlRNRkV3SFFZRFZSME9CQllFRkdUOVAvOHBQeGI3UVJVeFcvV2gKaXpkMnNnbEtNQjhHQTFVZEl3UVlNQmFBRkdUOVAvOHBQeGI3UVJVeFcvV2hpemQyc2dsS01BOEdBMVVkRXdFQgovd1FGTUFNQkFmOHdEUVlKS29aSWh2Y05BUUVMQlFBRGdnRUJBS3NWT2Fyc01aSXhLOUpLUzBHVHNnRXNjYThqCllhTDg1YmFsbndBbnBxMllSMGNIMlhvd2dLYjNyM3VmbVRCNERzWS9RMGllaENKeTMzOUJyNjVQMVBKMGgvemYKZEZOcnZKNGlvWDVMWnc5YkowQVFORCtZUTBFK010dFppbE9DbHNPOVBCdm1tUEp1dWFlYVdvS2pWZnNOL1RjMAoycUxVM1pVMHo5bmhYeDZlOWJxYUZLSU1jYnFiVk9nS2p3V0ZpbDlkRG4vQ29KbGFUUzRJWjlOaHFjUzhYMXd0ClQybWQvSUtaaEtKc3A3VlBGeDU5ZWhuZ0VPakZocGhzd20xdDhnQWVxL1A3SkhaUXlBUGZYbDNyZDFSQVJuRVIKQUpmVUxET2tzWFNFb2RTZittR0NrVWh1b2QvaDhMTUdXTFh6Q2d0SHBKMndaVHA5a1ZWVWtKdkpqSVU9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontexts-secret\",\"namespace\":\"default\"},\"type\":\"Opaque\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:15Z", + "creationTimestamp": "2020-02-19T23:20:42Z", "labels": { "kat-ambassador-id": "tlscontextstest", "scope": "AmbassadorTest" }, "name": "test-tlscontexts-secret", "namespace": "default", - "resourceVersion": "37721", + "resourceVersion": "56891", "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontexts-secret", - "uid": "22e52dd5-4794-11ea-829a-062d8f98984d" + "uid": "72ead33f-536e-11ea-85dd-167682b5c255" }, "type": "Opaque" } @@ -45,30 +45,38 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextstest-admin\"},\"name\":\"tlscontextstest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextstest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextstest\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: tls\nambassador_id: tlscontextstest\nconfig:\n upstream:\n enabled: True\n secret: test-tlscontexts-secret\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: tlscontextstest-http\nprefix: /TLSContextsTest/\nservice: tlscontextstest-http\nambassador_id: tlscontextstest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: tls\\nambassador_id: tlscontextstest\\nconfig:\\n upstream:\\n enabled: True\\n secret: test-tlscontexts-secret\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tlscontextstest-http\\nprefix: /TLSContextsTest/\\nservice: tlscontextstest-http\\nambassador_id: tlscontextstest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextstest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:15Z", + "creationTimestamp": "2020-02-19T23:20:42Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextstest", - "scope": "AmbassadorTest", - "service": "tlscontextstest-admin" + "scope": "AmbassadorTest" }, - "name": "tlscontextstest-admin", + "name": "tlscontextstest", "namespace": "default", - "resourceVersion": "37715", - "selfLink": "/api/v1/namespaces/default/services/tlscontextstest-admin", - "uid": "22ba9a4b-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56875", + "selfLink": "/api/v1/namespaces/default/services/tlscontextstest", + "uid": "72976793-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.3.28", + "clusterIP": "10.96.197.15", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "tlscontextstest-admin", - "nodePort": 31390, - "port": 8877, + "name": "http", + "nodePort": 31406, + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "nodePort": 31339, + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { @@ -86,40 +94,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8121},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8484}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontextstest-admin\"},\"name\":\"tlscontextstest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontextstest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontextstest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:16Z", + "creationTimestamp": "2020-02-19T23:20:42Z", "labels": { "kat-ambassador-id": "tlscontextstest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "tlscontextstest-admin" }, - "name": "tlscontextstest-http", + "name": "tlscontextstest-admin", "namespace": "default", - "resourceVersion": "37729", - "selfLink": "/api/v1/namespaces/default/services/tlscontextstest-http", - "uid": "2370e90e-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56884", + "selfLink": "/api/v1/namespaces/default/services/tlscontextstest-admin", + "uid": "72bb2325-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.104.248", + "clusterIP": "10.102.244.35", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8121 - }, - { - "name": "https", - "port": 443, + "name": "tlscontextstest-admin", + "nodePort": 30839, + "port": 8877, "protocol": "TCP", - "targetPort": 8484 + "targetPort": 8877 } ], "selector": { - "backend": "superpod-default" + "service": "tlscontextstest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -130,45 +135,40 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: tls\nambassador_id: tlscontextstest\nconfig:\n upstream:\n enabled: True\n secret: test-tlscontexts-secret\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: tlscontextstest-http\nprefix: /TLSContextsTest/\nservice: tlscontextstest-http\nambassador_id: tlscontextstest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: tls\\nambassador_id: tlscontextstest\\nconfig:\\n upstream:\\n enabled: True\\n secret: test-tlscontexts-secret\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tlscontextstest-http\\nprefix: /TLSContextsTest/\\nservice: tlscontextstest-http\\nambassador_id: tlscontextstest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextstest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontextstest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontextstest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontextstest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8122},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8485}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:14Z", + "creationTimestamp": "2020-02-19T23:20:43Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontextstest", "scope": "AmbassadorTest" }, - "name": "tlscontextstest", + "name": "tlscontextstest-http", "namespace": "default", - "resourceVersion": "37707", - "selfLink": "/api/v1/namespaces/default/services/tlscontextstest", - "uid": "2263db56-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56901", + "selfLink": "/api/v1/namespaces/default/services/tlscontextstest-http", + "uid": "738b95b3-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.188.31", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.105.111.70", "ports": [ { "name": "http", - "nodePort": 31716, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8122 }, { "name": "https", - "nodePort": 30820, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8485 } ], "selector": { - "service": "tlscontextstest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} diff --git a/python/tests/gold/tlscontexttest/bootstrap-ads.json b/python/tests/gold/tlscontexttest/bootstrap-ads.json index 0c0638422f..cfbdc1a8a1 100644 --- a/python/tests/gold/tlscontexttest/bootstrap-ads.json +++ b/python/tests/gold/tlscontexttest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlscontexttest-default", "id": "test-id" diff --git a/python/tests/gold/tlscontexttest/snapshots/econf.json b/python/tests/gold/tlscontexttest/snapshots/econf.json index b180747fd2..50095aad9a 100644 --- a/python/tests/gold/tlscontexttest/snapshots/econf.json +++ b/python/tests/gold/tlscontexttest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -80,8 +93,12 @@ ] }, "name": "cluster_https___tlscontexttest_http_otls_default", - "tls_context": { - "common_tls_context": {} + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": {} + } }, "type": "STRICT_DNS" } @@ -102,14 +119,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -298,8 +318,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -327,14 +346,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -580,8 +602,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -613,14 +634,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -866,8 +890,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "tls_context": { @@ -896,7 +919,8 @@ "name": "envoy.listener.tls_inspector" } ], - "name": "ambassador-listener-8443" + "name": "ambassador-listener-8443", + "traffic_direction": "UNSPECIFIED" }, { "address": { @@ -911,14 +935,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -1057,8 +1084,7 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false @@ -1071,14 +1097,17 @@ }, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -1195,15 +1224,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlscontexttest/snapshots/snapshot.yaml b/python/tests/gold/tlscontexttest/snapshots/snapshot.yaml index 472f4b860b..fde6ed3722 100644 --- a/python/tests/gold/tlscontexttest/snapshots/snapshot.yaml +++ b/python/tests/gold/tlscontexttest/snapshots/snapshot.yaml @@ -26,64 +26,64 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUpycUl0ekY2MTBpTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB4TUI0WERURTRNVEV3TVRFek5UTXhPRm9YCkRUSTRNVEF5T1RFek5UTXhPRm93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRFd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUUM5T2dDOHd4eUlyUHpvCkdYc0xwUEt0NzJERXgyd2p3VzhuWFcyd1dieWEzYzk2bjJuU0NLUEJuODVoYnFzaHpqNWloU1RBTURJb2c5RnYKRzZSS1dVUFhUNEtJa1R2M0NESHFYc0FwSmxKNGxTeW5ReW8yWnYwbytBZjhDTG5nWVpCK3JmenRad3llRGhWcAp3WXpCVjIzNXp6NisycWJWbUNabHZCdVhiVXFUbEVZWXZ1R2xNR3o3cFBmT1dLVXBlWW9kYkcyZmIraEZGcGVvCkN4a1VYclFzT29SNUpkSEc1aldyWnVCTzQ1NVNzcnpCTDhSbGU1VUhvMDVXY0s3YkJiaVF6MTA2cEhDSllaK3AKdmxQSWNOU1g1S2gzNEZnOTZVUHg5bFFpQTN6RFRLQmZ5V2NMUStxMWNabExjV2RnUkZjTkJpckdCLzdyYTFWVApnRUplR2tQekFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFmCkJnTlZIU01FR0RBV2dCUkRWVUtYWWJsRFdNTzE3MUJuWWZhYlkzM0NFVEFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBUE8vRDRUdDUyWHJsQ0NmUzZnVUVkRU5DcnBBV05YRHJvR2M2dApTVGx3aC8rUUxRYk5hZEtlaEtiZjg5clhLaituVXF0cS9OUlpQSXNBSytXVWtHOVpQb1FPOFBRaVY0V1g1clE3CjI5dUtjSmZhQlhrZHpVVzdxTlFoRTRjOEJhc0JySWVzcmtqcFQ5OVF4SktuWFFhTitTdzdvRlBVSUFOMzhHcWEKV2wvS1BNVHRicWt3eWFjS01CbXExVkx6dldKb0g1Q2l6Skp3aG5rWHh0V0tzLzY3clROblBWTXorbWVHdHZTaQpkcVg2V1NTbUdMRkVFcjJoZ1VjQVpqazNWdVFoLzc1aFh1K1UySXRzQys1cXBsaEc3Q1hzb1huS0t5MVhsT0FFCmI4a3IyZFdXRWs2STVZNm5USnpXSWxTVGtXODl4d1hyY3RtTjlzYjlxNFNuaVZsegotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2UUlCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktjd2dnU2pBZ0VBQW9JQkFRQzlPZ0M4d3h5SXJQem8KR1hzTHBQS3Q3MkRFeDJ3andXOG5YVzJ3V2J5YTNjOTZuMm5TQ0tQQm44NWhicXNoemo1aWhTVEFNRElvZzlGdgpHNlJLV1VQWFQ0S0lrVHYzQ0RIcVhzQXBKbEo0bFN5blF5bzJadjBvK0FmOENMbmdZWkIrcmZ6dFp3eWVEaFZwCndZekJWMjM1eno2KzJxYlZtQ1psdkJ1WGJVcVRsRVlZdnVHbE1HejdwUGZPV0tVcGVZb2RiRzJmYitoRkZwZW8KQ3hrVVhyUXNPb1I1SmRIRzVqV3JadUJPNDU1U3NyekJMOFJsZTVVSG8wNVdjSzdiQmJpUXoxMDZwSENKWVorcAp2bFBJY05TWDVLaDM0Rmc5NlVQeDlsUWlBM3pEVEtCZnlXY0xRK3ExY1psTGNXZGdSRmNOQmlyR0IvN3JhMVZUCmdFSmVHa1B6QWdNQkFBRUNnZ0VBQmFsN3BpcE1hMGFKMXNRVWEzZkhEeTlQZlBQZXAzODlQVGROZGU1cGQxVFYKeFh5SnBSQS9IaWNTL05WYjU0b05VZE5jRXlnZUNCcFJwUHAxd3dmQ3dPbVBKVmo3SzF3aWFqbmxsQldpZUJzMgpsOWFwcDdFVE9DdWJ5WTNWU2dLQldWa0piVzBjOG9uSFdEL0RYM0duUjhkTXdGYzRrTUdadkllUlo4bU1acmdHCjZPdDNKOHI2eVZsZWI2OGF1WmtneXMwR2VGc3pNdVRubHJCOEw5djI1UUtjVGtESjIvRWx1Y1p5aER0eGF0OEIKTzZOUnNubmNyOHhwUVdPci9sV3M5VVFuZEdCdHFzbXMrdGNUN1ZUNU9UanQ4WHY5NVhNSHB5Z29pTHk3czhvYwpJMGprNDJabzRKZW5JT3c2Rm0weUFEZ0E3eWlXcks0bEkzWGhqaTVSb1FLQmdRRGRqaWNkTUpYVUZWc28rNTJkCkUwT2EwcEpVMFNSaC9JQmdvRzdNakhrVWxiaXlpR1pNanA5MEo5VHFaL1ErM1pWZVdqMmxPSWF0OG5nUzB6MDAKVzA3T1ZxYXprMVNYaFZlY2tGNWFEcm5PRDNhU2VWMSthV3JUdDFXRWdqOVFxYnJZYVA5emd4UkpkRzV3WENCUApGNDNFeXE5ZEhXOWF6SSt3UHlJQ0JqNnZBd0tCZ1FEYXBTelhPR2ViMi9SMWhlWXdWV240czNGZEtYVjgzemtTCnFSWDd6d1pLdkk5OGMybDU1Y1ZNUzBoTGM0bTVPMXZCaUd5SG80eTB2SVAvR0k0Rzl4T1FhMXdpVnNmUVBiSU4KLzJPSDFnNXJLSFdCWVJUaHZGcERqdHJRU2xyRHVjWUNSRExCd1hUcDFrbVBkL09mY2FybG42MjZEamthZllieAp3dWUydlhCTVVRS0JnQm4vTmlPOHNiZ0RFWUZMbFFEN1k3RmxCL3FmMTg4UG05aTZ1b1dSN2hzMlBrZmtyV3hLClIvZVBQUEtNWkNLRVNhU2FuaVVtN3RhMlh0U0dxT1hkMk85cFI0Skd4V1JLSnkrZDJSUmtLZlU5NTBIa3I4M0gKZk50KzVhLzR3SWtzZ1ZvblorSWIvV05wSUJSYkd3ZHMwaHZIVkxCdVpjU1h3RHlFQysrRTRCSVZBb0dCQUoxUQp6eXlqWnRqYnI4NkhZeEpQd29teEF0WVhLSE9LWVJRdUdLVXZWY1djV2xrZTZUdE51V0dsb1FTNHd0VkdBa1VECmxhTWFaL2o2MHJaT3dwSDhZRlUvQ2ZHakl1MlFGbmEvMUtzOXR1NGZGRHpjenh1RVhDWFR1Vmk0eHdtZ3R2bVcKZkRhd3JTQTZrSDdydlp4eE9wY3hCdHloc3pCK05RUHFTckpQSjJlaEFvR0FkdFJKam9vU0lpYURVU25lZUcyZgpUTml1T01uazJkeFV3RVF2S1E4eWNuUnpyN0QwaEtZVWIycThHKzE2bThQUjNCcFMzZDFLbkpMVnI3TUhaWHpSCitzZHNaWGtTMWVEcEZhV0RFREFEWWI0ckRCb2RBdk8xYm03ZXdTMzhSbk1UaTlhdFZzNVNTODNpZG5HbFZiSmsKYkZKWG0rWWxJNHFkaXowTFdjWGJyREE9Ci0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-1\",\"namespace\":\"secret-namespace\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:26Z", + "creationTimestamp": "2020-02-19T23:20:57Z", "labels": { "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, "name": "test-tlscontext-secret-1", "namespace": "secret-namespace", - "resourceVersion": "37930", + "resourceVersion": "57157", "selfLink": "/api/v1/namespaces/secret-namespace/secrets/test-tlscontext-secret-1", - "uid": "29a01528-4794-11ea-829a-062d8f98984d" + "uid": "7b684f31-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" }, { "apiVersion": "v1", "data": { - "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", - "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==" + "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", + "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K" }, "kind": "Secret", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-2\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-0\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:19:45Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, - "name": "test-tlscontext-secret-2", + "name": "test-tlscontext-secret-0", "namespace": "default", - "resourceVersion": "37935", - "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-2", - "uid": "110da935-4794-11ea-829a-062d8f98984d" + "resourceVersion": "60446", + "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-0", + "uid": "5e7e2378-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" }, { "apiVersion": "v1", "data": { - "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K", - "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K" + "tls.crt": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==", + "tls.key": "LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==" }, "kind": "Secret", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-0\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURnRENDQW1pZ0F3SUJBZ0lKQUlIWTY3cFNoZ3NyTUEwR0NTcUdTSWIzRFFFQkN3VUFNRlV4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVFzd0NRWURWUVFLREFKRQpWekViTUJrR0ExVUVBd3dTZEd4ekxXTnZiblJsZUhRdGFHOXpkQzB5TUI0WERURTRNVEV3TVRFME1EUXhObG9YCkRUSTRNVEF5T1RFME1EUXhObG93VlRFTE1Ba0dBMVVFQmhNQ1ZWTXhDekFKQmdOVkJBZ01BazFCTVE4d0RRWUQKVlFRSERBWkNiM04wYjI0eEN6QUpCZ05WQkFvTUFrUlhNUnN3R1FZRFZRUUREQkowYkhNdFkyOXVkR1Y0ZEMxbwpiM04wTFRJd2dnRWlNQTBHQ1NxR1NJYjNEUUVCQVFVQUE0SUJEd0F3Z2dFS0FvSUJBUURjQThZdGgvUFdhT0dTCm9ObXZFSFoyNGpRN1BLTitENG93TEhXZWl1UmRtaEEwWU92VTN3cUczVnFZNFpwbFpBVjBQS2xELysyWlNGMTQKejh3MWVGNFFUelphWXh3eTkrd2ZITmtUREVwTWpQOEpNMk9FYnlrVVJ4VVJ2VzQrN0QzMEUyRXo1T1BseG1jMApNWU0vL0pINUVEUWhjaURybFlxZTFTUk1SQUxaZVZta2FBeXU2TkhKVEJ1ajBTSVB1ZExUY2grOTBxK3Jkd255CmZrVDF4M09UYW5iV2pub21FSmU3TXZ5NG12dnFxSUh1NDhTOUM4WmQxQkdWUGJ1OFYvVURyU1dROXpZQ1g0U0cKT2FzbDhDMFhtSDZrZW1oUERsRC9UdjB4dnlINXE1TVVjSGk0bUp0Titnem9iNTREd3pWR0VqZWY1TGVTMVY1RgowVEFQMGQrWEFnTUJBQUdqVXpCUk1CMEdBMVVkRGdRV0JCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFmCkJnTlZIU01FR0RBV2dCUWRGMEdRSGRxbHRoZG5RWXFWaXVtRXJsUk9mREFQQmdOVkhSTUJBZjhFQlRBREFRSC8KTUEwR0NTcUdTSWIzRFFFQkN3VUFBNElCQVFBbUFLYkNsdUhFZS9JRmJ1QWJneDBNenV6aTkwd2xtQVBiOGdtTwpxdmJwMjl1T1ZzVlNtUUFkZFBuZEZhTVhWcDFaaG1UVjVDU1F0ZFgyQ1ZNVyswVzQ3Qy9DT0Jkb1NFUTl5akJmCmlGRGNseG04QU4yUG1hR1FhK3hvT1hnWkxYZXJDaE5LV0JTWlIrWktYTEpTTTlVYUVTbEhmNXVuQkxFcENqK2oKZEJpSXFGY2E3eElGUGtyKzBSRW9BVmMveFBubnNhS2pMMlV5Z0dqUWZGTnhjT042Y3VjYjZMS0pYT1pFSVRiNQpINjhKdWFSQ0tyZWZZK0l5aFFWVk5taWk3dE1wY1UyS2pXNXBrVktxVTNkS0l0RXEyVmtTZHpNVUtqTnhZd3FGCll6YnozNFQ1MENXbm9HbU5SQVdKc0xlVmlPWVUyNmR3YkFXZDlVYitWMDFRam43OAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2d0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktrd2dnU2xBZ0VBQW9JQkFRRGNBOFl0aC9QV2FPR1MKb05tdkVIWjI0alE3UEtOK0Q0b3dMSFdlaXVSZG1oQTBZT3ZVM3dxRzNWcVk0WnBsWkFWMFBLbEQvKzJaU0YxNAp6OHcxZUY0UVR6WmFZeHd5OSt3ZkhOa1RERXBNalA4Sk0yT0VieWtVUnhVUnZXNCs3RDMwRTJFejVPUGx4bWMwCk1ZTS8vSkg1RURRaGNpRHJsWXFlMVNSTVJBTFplVm1rYUF5dTZOSEpUQnVqMFNJUHVkTFRjaCs5MHErcmR3bnkKZmtUMXgzT1RhbmJXam5vbUVKZTdNdnk0bXZ2cXFJSHU0OFM5QzhaZDFCR1ZQYnU4Vi9VRHJTV1E5ellDWDRTRwpPYXNsOEMwWG1INmtlbWhQRGxEL1R2MHh2eUg1cTVNVWNIaTRtSnROK2d6b2I1NER3elZHRWplZjVMZVMxVjVGCjBUQVAwZCtYQWdNQkFBRUNnZ0VCQUk2U3I0anYwZForanJhN0gzVnZ3S1RYZnl0bjV6YVlrVjhZWUh3RjIyakEKbm9HaTBSQllIUFU2V2l3NS9oaDRFWVM2anFHdkptUXZYY3NkTldMdEJsK2hSVUtiZVRtYUtWd2NFSnRrV24xeQozUTQwUytnVk5OU2NINDRvYUZuRU0zMklWWFFRZnBKMjJJZ2RFY1dVUVcvWnpUNWpPK3dPTXc4c1plSTZMSEtLCkdoOENsVDkrRGUvdXFqbjNCRnQwelZ3cnFLbllKSU1DSWFrb2lDRmtIcGhVTURFNVkyU1NLaGFGWndxMWtLd0sKdHFvWFpKQnlzYXhnUTFRa21mS1RnRkx5WlpXT01mRzVzb1VrU1RTeURFRzFsYnVYcHpUbTlVSTlKU2lsK01yaAp1LzVTeXBLOHBCSHhBdFg5VXdiTjFiRGw3Sng1SWJyMnNoM0F1UDF4OUpFQ2dZRUE4dGNTM09URXNOUFpQZlptCk9jaUduOW9STTdHVmVGdjMrL05iL3JodHp1L1RQUWJBSzhWZ3FrS0dPazNGN1krY2txS1NTWjFnUkF2SHBsZEIKaTY0Y0daT1dpK01jMWZVcEdVV2sxdnZXbG1nTUlQVjVtbFpvOHowMlNTdXhLZTI1Y2VNb09oenFlay9vRmFtdgoyTmxFeTh0dEhOMUxMS3grZllhMkpGcWVycThDZ1lFQTUvQUxHSXVrU3J0K0dkektJLzV5cjdSREpTVzIzUTJ4CkM5ZklUTUFSL1Q4dzNsWGhyUnRXcmlHL3l0QkVPNXdTMVIwdDkydW1nVkhIRTA5eFFXbzZ0Tm16QVBNb1RSekMKd08yYnJqQktBdUJkQ0RISjZsMlFnOEhPQWovUncrK2x4bEN0VEI2YS8xWEZIZnNHUGhqMEQrWlJiWVZzaE00UgpnSVVmdmpmQ1Y1a0NnWUVBMzdzL2FieHJhdThEaTQ3a0NBQ3o1N3FsZHBiNk92V2d0OFF5MGE5aG0vSmhFQ3lVCkNML0VtNWpHeWhpMWJuV05yNXVRWTdwVzR0cG5pdDJCU2d1VFlBMFYrck8zOFhmNThZcTBvRTFPR3l5cFlBUkoKa09SanRSYUVXVTJqNEJsaGJZZjNtL0xnSk9oUnp3T1RPNXFSUTZHY1dhZVlod1ExVmJrelByTXUxNGtDZ1lCbwp4dEhjWnNqelVidm5wd3hTTWxKUStaZ1RvZlAzN0lWOG1pQk1POEJrclRWQVczKzFtZElRbkFKdWRxTThZb2RICmF3VW03cVNyYXV3SjF5dU1wNWFadUhiYkNQMjl5QzVheFh3OHRtZlk0TTVtTTBmSjdqYW9ydGFId1pqYmNObHMKdTJsdUo2MVJoOGVpZ1pJU1gyZHgvMVB0ckFhWUFCZDcvYWVYWU0wVWtRS0JnUUNVbkFIdmRQUGhIVnJDWU1rTgpOOFBEK0t0YmhPRks2S3MvdlgyUkcyRnFmQkJPQWV3bEo1d0xWeFBLT1RpdytKS2FSeHhYMkcvREZVNzduOEQvCkR5V2RjM2ZCQWQ0a1lJamZVaGRGa1hHNEFMUDZBNVFIZVN4NzNScTFLNWxMVWhPbEZqc3VPZ0NKS28wVlFmRC8KT05paDB6SzN5Wmc3aDVQamZ1TUdGb09OQWc9PQotLS0tLUVORCBQUklWQVRFIEtFWS0tLS0tCg==\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-tlscontext-secret-2\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:19:45Z", + "creationTimestamp": "2020-02-19T23:20:08Z", "labels": { "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, - "name": "test-tlscontext-secret-0", + "name": "test-tlscontext-secret-2", "namespace": "default", - "resourceVersion": "37924", - "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-0", - "uid": "10fe39a1-4794-11ea-829a-062d8f98984d" + "resourceVersion": "60447", + "selfLink": "/api/v1/namespaces/default/secrets/test-tlscontext-secret-2", + "uid": "5e8c3f1f-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -97,7 +97,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: TLSContextTest-same-prefix-1\nprefix: /tls-context-same/\nservice: http://tlscontexttest-http\nhost: tls-context-host-1\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextTest-same-context-1\nhosts:\n- tls-context-host-1\nsecret: test-tlscontext-secret-1.secret-namespace\nmin_tls_version: v1.0\nmax_tls_version: v1.3\nredirect_cleartext_from: 8080\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: TLSContextTest-same-prefix-2\nprefix: /tls-context-same/\nservice: http://tlscontexttest-http\nhost: tls-context-host-2\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextTest-same-context-2\nhosts:\n- tls-context-host-2\nsecret: test-tlscontext-secret-2\nalpn_protocols: h2,http/1.1\nredirect_cleartext_from: 8080\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: Module\nname: tls\nconfig:\n server:\n enabled: True\n secret: test-tlscontext-secret-0\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: TLSContextTest-other-mapping\nprefix: /TLSContextTest/\nservice: https://tlscontexttest-http\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextTest-no-secret\nmin_tls_version: v1.0\nmax_tls_version: v1.3\nredirect_cleartext_from: 8080\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextTest-same-context-error\nhosts:\n- tls-context-host-1\nredirect_cleartext_from: 8080\nambassador_id: tlscontexttest\n\n---\napiVersion: ambassador/v1\nkind: TLSContext\nname: TLSContextTest-rcf-error\nhosts:\n- tls-context-host-1\nredirect_cleartext_from: 8081\nambassador_id: tlscontexttest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: TLSContextTest-same-prefix-1\\nprefix: /tls-context-same/\\nservice: http://tlscontexttest-http\\nhost: tls-context-host-1\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextTest-same-context-1\\nhosts:\\n- tls-context-host-1\\nsecret: test-tlscontext-secret-1.secret-namespace\\nmin_tls_version: v1.0\\nmax_tls_version: v1.3\\nredirect_cleartext_from: 8080\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: TLSContextTest-same-prefix-2\\nprefix: /tls-context-same/\\nservice: http://tlscontexttest-http\\nhost: tls-context-host-2\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextTest-same-context-2\\nhosts:\\n- tls-context-host-2\\nsecret: test-tlscontext-secret-2\\nalpn_protocols: h2,http/1.1\\nredirect_cleartext_from: 8080\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: Module\\nname: tls\\nconfig:\\n server:\\n enabled: True\\n secret: test-tlscontext-secret-0\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: TLSContextTest-other-mapping\\nprefix: /TLSContextTest/\\nservice: https://tlscontexttest-http\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextTest-no-secret\\nmin_tls_version: v1.0\\nmax_tls_version: v1.3\\nredirect_cleartext_from: 8080\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextTest-same-context-error\\nhosts:\\n- tls-context-host-1\\nredirect_cleartext_from: 8080\\nambassador_id: tlscontexttest\\n\\n---\\napiVersion: ambassador/v1\\nkind: TLSContext\\nname: TLSContextTest-rcf-error\\nhosts:\\n- tls-context-host-1\\nredirect_cleartext_from: 8081\\nambassador_id: tlscontexttest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontexttest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlscontexttest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:23Z", + "creationTimestamp": "2020-02-19T23:20:56Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlscontexttest", @@ -105,24 +105,24 @@ }, "name": "tlscontexttest", "namespace": "default", - "resourceVersion": "37891", + "resourceVersion": "57132", "selfLink": "/api/v1/namespaces/default/services/tlscontexttest", - "uid": "27e32bb0-4794-11ea-829a-062d8f98984d" + "uid": "7ad65d7e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.46.191", + "clusterIP": "10.110.183.228", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31675, + "nodePort": 32378, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31316, + "nodePort": 30253, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -145,7 +145,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\",\"service\":\"tlscontexttest-admin\"},\"name\":\"tlscontexttest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlscontexttest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlscontexttest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:24Z", + "creationTimestamp": "2020-02-19T23:20:56Z", "labels": { "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest", @@ -153,17 +153,17 @@ }, "name": "tlscontexttest-admin", "namespace": "default", - "resourceVersion": "37902", + "resourceVersion": "57141", "selfLink": "/api/v1/namespaces/default/services/tlscontexttest-admin", - "uid": "28719fb2-4794-11ea-829a-062d8f98984d" + "uid": "7b37321e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.13.193", + "clusterIP": "10.99.226.50", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tlscontexttest-admin", - "nodePort": 30635, + "nodePort": 32466, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -184,33 +184,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontexttest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8126},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8489}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlscontexttest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlscontexttest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8127},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8490}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:27Z", + "creationTimestamp": "2020-02-19T23:20:57Z", "labels": { "kat-ambassador-id": "tlscontexttest", "scope": "AmbassadorTest" }, "name": "tlscontexttest-http", "namespace": "default", - "resourceVersion": "37940", + "resourceVersion": "57161", "selfLink": "/api/v1/namespaces/default/services/tlscontexttest-http", - "uid": "29de1cae-4794-11ea-829a-062d8f98984d" + "uid": "7b834148-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.96.164.36", + "clusterIP": "10.96.199.87", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8126 + "targetPort": 8127 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8489 + "targetPort": 8490 } ], "selector": { diff --git a/python/tests/gold/tlsinvalidsecret/bootstrap-ads.json b/python/tests/gold/tlsinvalidsecret/bootstrap-ads.json index f6ca94c23f..ee30f1c1a2 100644 --- a/python/tests/gold/tlsinvalidsecret/bootstrap-ads.json +++ b/python/tests/gold/tlsinvalidsecret/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlsinvalidsecret-default", "id": "test-id" diff --git a/python/tests/gold/tlsinvalidsecret/snapshots/econf.json b/python/tests/gold/tlsinvalidsecret/snapshots/econf.json index 259dce7d7d..1574fa8e7e 100644 --- a/python/tests/gold/tlsinvalidsecret/snapshots/econf.json +++ b/python/tests/gold/tlsinvalidsecret/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -284,15 +300,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlsinvalidsecret/snapshots/snapshot.yaml b/python/tests/gold/tlsinvalidsecret/snapshots/snapshot.yaml index 81c4d2ce59..0326481684 100644 --- a/python/tests/gold/tlsinvalidsecret/snapshots/snapshot.yaml +++ b/python/tests/gold/tlsinvalidsecret/snapshots/snapshot.yaml @@ -24,7 +24,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nname: tls\nambassador_id: tlsinvalidsecret\nconfig:\n server:\n enabled: True\n secret: test-certs-secret-invalid\n missing-secret-key:\n cert_chain_file: /nonesuch\n bad-path-info:\n cert_chain_file: /nonesuch\n private_key_file: /nonesuch\n validation-without-termination:\n enabled: True\n secret: test-certs-secret-invalid\n ca_secret: ambassador-certs\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nname: tls\\nambassador_id: tlsinvalidsecret\\nconfig:\\n server:\\n enabled: True\\n secret: test-certs-secret-invalid\\n missing-secret-key:\\n cert_chain_file: /nonesuch\\n bad-path-info:\\n cert_chain_file: /nonesuch\\n private_key_file: /nonesuch\\n validation-without-termination:\\n enabled: True\\n secret: test-certs-secret-invalid\\n ca_secret: ambassador-certs\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsinvalidsecret\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlsinvalidsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:21Z", + "creationTimestamp": "2020-02-19T23:20:52Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlsinvalidsecret", @@ -32,24 +32,24 @@ }, "name": "tlsinvalidsecret", "namespace": "default", - "resourceVersion": "37839", + "resourceVersion": "57077", "selfLink": "/api/v1/namespaces/default/services/tlsinvalidsecret", - "uid": "2637f630-4794-11ea-829a-062d8f98984d" + "uid": "78d3c577-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.109.135.171", + "clusterIP": "10.107.11.212", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 32725, + "nodePort": 30263, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30277, + "nodePort": 30397, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -72,7 +72,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlsinvalidsecret\",\"scope\":\"AmbassadorTest\",\"service\":\"tlsinvalidsecret-admin\"},\"name\":\"tlsinvalidsecret-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlsinvalidsecret-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlsinvalidsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:21Z", + "creationTimestamp": "2020-02-19T23:20:53Z", "labels": { "kat-ambassador-id": "tlsinvalidsecret", "scope": "AmbassadorTest", @@ -80,17 +80,17 @@ }, "name": "tlsinvalidsecret-admin", "namespace": "default", - "resourceVersion": "37844", + "resourceVersion": "57090", "selfLink": "/api/v1/namespaces/default/services/tlsinvalidsecret-admin", - "uid": "265685c0-4794-11ea-829a-062d8f98984d" + "uid": "793106b7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.83.156", + "clusterIP": "10.106.205.253", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tlsinvalidsecret-admin", - "nodePort": 32620, + "nodePort": 31090, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,33 +112,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tls_target_mapping\nprefix: /tls-target/\nservice: tlsinvalidsecret-http\nambassador_id: tlsinvalidsecret\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: tlsinvalidsecret-http\\nambassador_id: tlsinvalidsecret\\n\"},\"labels\":{\"kat-ambassador-id\":\"tlsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsinvalidsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8125},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8488}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tls_target_mapping\\nprefix: /tls-target/\\nservice: tlsinvalidsecret-http\\nambassador_id: tlsinvalidsecret\\n\"},\"labels\":{\"kat-ambassador-id\":\"tlsinvalidsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsinvalidsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8126},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8489}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:21Z", + "creationTimestamp": "2020-02-19T23:20:54Z", "labels": { "kat-ambassador-id": "tlsinvalidsecret", "scope": "AmbassadorTest" }, "name": "tlsinvalidsecret-http", "namespace": "default", - "resourceVersion": "37852", + "resourceVersion": "57109", "selfLink": "/api/v1/namespaces/default/services/tlsinvalidsecret-http", - "uid": "267a6721-4794-11ea-829a-062d8f98984d" + "uid": "7a0b747c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.57.45", + "clusterIP": "10.111.28.81", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8125 + "targetPort": 8126 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8488 + "targetPort": 8489 } ], "selector": { diff --git a/python/tests/gold/tlsoriginationsecret/bootstrap-ads.json b/python/tests/gold/tlsoriginationsecret/bootstrap-ads.json index 539465151b..f9ab757975 100644 --- a/python/tests/gold/tlsoriginationsecret/bootstrap-ads.json +++ b/python/tests/gold/tlsoriginationsecret/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tlsoriginationsecret-default", "id": "test-id" diff --git a/python/tests/gold/tlsoriginationsecret/snapshots/econf.json b/python/tests/gold/tlsoriginationsecret/snapshots/econf.json index 392bb53f77..c4c198d7d9 100644 --- a/python/tests/gold/tlsoriginationsecret/snapshots/econf.json +++ b/python/tests/gold/tlsoriginationsecret/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -53,18 +66,22 @@ ] }, "name": "cluster_tlsoriginationsecret_http_otls_u-0", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -94,18 +111,22 @@ ] }, "name": "cluster_tlsoriginationsecret_http_otls_upstream_default", - "tls_context": { - "common_tls_context": { - "tls_certificates": [ - { - "certificate_chain": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt" - }, - "private_key": { - "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key" + "transport_socket": { + "name": "envoy.transport_sockets.tls", + "typed_config": { + "@type": "type.googleapis.com/envoy.api.v2.auth.UpstreamTlsContext", + "common_tls_context": { + "tls_certificates": [ + { + "certificate_chain": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt" + }, + "private_key": { + "filename": "/tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key" + } } - } - ] + ] + } } }, "type": "STRICT_DNS" @@ -125,14 +146,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -383,15 +407,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/tlsoriginationsecret/snapshots/snapshot.yaml b/python/tests/gold/tlsoriginationsecret/snapshots/snapshot.yaml index fd237f6053..917ca5e1d2 100644 --- a/python/tests/gold/tlsoriginationsecret/snapshots/snapshot.yaml +++ b/python/tests/gold/tlsoriginationsecret/snapshots/snapshot.yaml @@ -26,16 +26,16 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"data\":{\"tls.crt\":\"LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURwakNDQW82Z0F3SUJBZ0lKQUpxa1Z4Y1RtQ1FITUEwR0NTcUdTSWIzRFFFQkN3VUFNR2d4Q3pBSkJnTlYKQkFZVEFsVlRNUXN3Q1FZRFZRUUlEQUpOUVRFUE1BMEdBMVVFQnd3R1FtOXpkRzl1TVJFd0R3WURWUVFLREFoRQpZWFJoZDJseVpURVVNQklHQTFVRUN3d0xSVzVuYVc1bFpYSnBibWN4RWpBUUJnTlZCQU1NQ1d4dlkyRnNhRzl6CmREQWVGdzB4T0RFd01UQXhNREk1TURKYUZ3MHlPREV3TURjeE1ESTVNREphTUdneEN6QUpCZ05WQkFZVEFsVlQKTVFzd0NRWURWUVFJREFKTlFURVBNQTBHQTFVRUJ3d0dRbTl6ZEc5dU1SRXdEd1lEVlFRS0RBaEVZWFJoZDJseQpaVEVVTUJJR0ExVUVDd3dMUlc1bmFXNWxaWEpwYm1jeEVqQVFCZ05WQkFNTUNXeHZZMkZzYUc5emREQ0NBU0l3CkRRWUpLb1pJaHZjTkFRRUJCUUFEZ2dFUEFEQ0NBUW9DZ2dFQkFMcTZtdS9FSzlQc1Q0YkR1WWg0aEZPVnZiblAKekV6MGpQcnVzdXcxT05MQk9jT2htbmNSTnE4c1FyTGxBZ3NicDBuTFZmQ1pSZHQ4UnlOcUFGeUJlR29XS3IvZAprQVEybVBucjBQRHlCTzk0UHo4VHdydDBtZEtEU1dGanNxMjlOYVJaT0JqdStLcGV6RytOZ3pLMk04M0ZtSldUCnFYdTI3ME9pOXlqb2VGQ3lPMjdwUkdvcktkQk9TcmIwd3ozdFdWUGk4NFZMdnFKRWprT0JVZjJYNVF3b25XWngKMktxVUJ6OUFSZVVUMzdwUVJZQkJMSUdvSnM4U042cjF4MSt1dTNLdTVxSkN1QmRlSHlJbHpKb2V0aEp2K3pTMgowN0pFc2ZKWkluMWNpdXhNNzNPbmVRTm1LUkpsL2NEb3BLemswSldRSnRSV1NnbktneFNYWkRrZjJMOENBd0VBCkFhTlRNRkV3SFFZRFZSME9CQllFRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1COEdBMVVkSXdRWU1CYUEKRkJoQzdDeVRpNGFkSFVCd0wvTkZlRTZLdnFIRE1BOEdBMVVkRXdFQi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTgpBUUVMQlFBRGdnRUJBSFJvb0xjcFdEa1IyMEhENEJ5d1BTUGRLV1hjWnN1U2tXYWZyekhoYUJ5MWJZcktIR1o1CmFodFF3L1gwQmRnMWtidlpZUDJSTzdGTFhBSlNTdXVJT0NHTFVwS0pkVHE1NDREUThNb1daWVZKbTc3UWxxam0KbHNIa2VlTlRNamFOVjdMd0MzalBkMERYelczbGVnWFRoYWpmZ2dtLzBJZXNGRzBVWjFEOTJHNURmc0hLekpSagpNSHZyVDNtVmJGZjkrSGJhRE4yT2g5VjIxUWhWSzF2M0F2dWNXczhUWCswZHZFZ1dtWHBRcndEd2pTMU04QkRYCldoWjVsZTZjVzhNYjhnZmRseG1JckpnQStuVVZzMU9EbkJKS1F3MUY4MVdkc25tWXdweVUrT2xVais4UGt1TVoKSU4rUlhQVnZMSWJ3czBmamJ4UXRzbTArZVBpRnN2d0NsUFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\",\"tls.key\":\"LS0tLS1CRUdJTiBQUklWQVRFIEtFWS0tLS0tCk1JSUV2Z0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQktnd2dnU2tBZ0VBQW9JQkFRQzZ1cHJ2eEN2VDdFK0cKdzdtSWVJUlRsYjI1ejh4TTlJejY3ckxzTlRqU3dUbkRvWnAzRVRhdkxFS3k1UUlMRzZkSnkxWHdtVVhiZkVjagphZ0JjZ1hocUZpcS8zWkFFTnBqNTY5RHc4Z1R2ZUQ4L0U4SzdkSm5TZzBsaFk3S3R2VFdrV1RnWTd2aXFYc3h2CmpZTXl0alBOeFppVms2bDd0dTlEb3ZjbzZIaFFzanR1NlVScUt5blFUa3EyOU1NOTdWbFQ0dk9GUzc2aVJJNUQKZ1ZIOWwrVU1LSjFtY2RpcWxBYy9RRVhsRTkrNlVFV0FRU3lCcUNiUEVqZXE5Y2RmcnJ0eXJ1YWlRcmdYWGg4aQpKY3lhSHJZU2IvczB0dE95UkxIeVdTSjlYSXJzVE85enAza0RaaWtTWmYzQTZLU3M1TkNWa0NiVVZrb0p5b01VCmwyUTVIOWkvQWdNQkFBRUNnZ0VBSVFsZzNpamNCRHViK21Eb2syK1hJZDZ0V1pHZE9NUlBxUm5RU0NCR2RHdEIKV0E1Z2NNNTMyVmhBV0x4UnR6dG1ScFVXR0dKVnpMWlpNN2ZPWm85MWlYZHdpcytkYWxGcWtWVWFlM2FtVHVQOApkS0YvWTRFR3Nnc09VWSs5RGlZYXRvQWVmN0xRQmZ5TnVQTFZrb1JQK0FrTXJQSWFHMHhMV3JFYmYzNVp3eFRuCnd5TTF3YVpQb1oxWjZFdmhHQkxNNzlXYmY2VFY0WXVzSTRNOEVQdU1GcWlYcDNlRmZ4L0tnNHhtYnZtN1JhYzcKOEJ3Z3pnVmljNXlSbkVXYjhpWUh5WGtyazNTL0VCYUNEMlQwUjM5VmlVM1I0VjBmMUtyV3NjRHowVmNiVWNhKwpzeVdyaVhKMHBnR1N0Q3FWK0dRYy9aNmJjOGt4VWpTTWxOUWtudVJRZ1FLQmdRRHpwM1ZaVmFzMTA3NThVT00rCnZUeTFNL0V6azg4cWhGb21kYVFiSFRlbStpeGpCNlg3RU9sRlkya3JwUkwvbURDSEpwR0MzYlJtUHNFaHVGSUwKRHhSQ2hUcEtTVmNsSytaaUNPaWE1ektTVUpxZnBOcW15RnNaQlhJNnRkNW9mWk42aFpJVTlJR2RUaGlYMjBONwppUW01UnZlSUx2UHVwMWZRMmRqd2F6Ykgvd0tCZ1FERU1MN21Mb2RqSjBNTXh6ZnM3MW1FNmZOUFhBMVY2ZEgrCllCVG4xS2txaHJpampRWmFNbXZ6dEZmL1F3Wkhmd3FKQUVuNGx2em5ncUNzZTMvUElZMy8zRERxd1p2NE1vdy8KRGdBeTBLQmpQYVJGNjhYT1B1d0VuSFN1UjhyZFg2UzI3TXQ2cEZIeFZ2YjlRRFJuSXc4a3grSFVreml4U0h5Ugo2NWxESklEdlFRS0JnUURpQTF3ZldoQlBCZk9VYlpQZUJydmhlaVVycXRob29BemYwQkJCOW9CQks1OHczVTloCjdQWDFuNWxYR3ZEY2x0ZXRCbUhEK3RQMFpCSFNyWit0RW5mQW5NVE5VK3E2V0ZhRWFhOGF3WXR2bmNWUWdTTXgKd25oK1pVYm9udnVJQWJSajJyTC9MUzl1TTVzc2dmKy9BQWM5RGs5ZXkrOEtXY0Jqd3pBeEU4TGxFUUtCZ0IzNwoxVEVZcTFoY0I4Tk1MeC9tOUtkN21kUG5IYUtqdVpSRzJ1c1RkVWNxajgxdklDbG95MWJUbVI5Si93dXVQczN4ClhWekF0cVlyTUtNcnZMekxSQWgyZm9OaVU1UDdKYlA5VDhwMFdBN1N2T2h5d0NobE5XeisvRlltWXJxeWcxbngKbHFlSHRYNU03REtJUFhvRndhcTlZYVk3V2M2K1pVdG4xbVNNajZnQkFvR0JBSTgwdU9iTkdhRndQTVYrUWhiZApBelkrSFNGQjBkWWZxRytzcTBmRVdIWTNHTXFmNFh0aVRqUEFjWlg3RmdtT3Q5Uit3TlFQK0dFNjZoV0JpKzBWCmVLV3prV0lXeS9sTVZCSW0zVWtlSlRCT3NudTFVaGhXbm5WVDhFeWhEY1FxcndPSGlhaUo3bFZSZmRoRWFyQysKSnpaU0czOHVZUVlyc0lITnRVZFgySmdPCi0tLS0tRU5EIFBSSVZBVEUgS0VZLS0tLS0K\"},\"kind\":\"Secret\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlsoriginationsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"test-origination-secret\",\"namespace\":\"default\"},\"type\":\"kubernetes.io/tls\"}\n" }, - "creationTimestamp": "2020-02-04T21:20:19Z", + "creationTimestamp": "2020-02-19T23:20:47Z", "labels": { "kat-ambassador-id": "tlsoriginationsecret", "scope": "AmbassadorTest" }, "name": "test-origination-secret", "namespace": "default", - "resourceVersion": "37789", + "resourceVersion": "56981", "selfLink": "/api/v1/namespaces/default/secrets/test-origination-secret", - "uid": "2521b004-4794-11ea-829a-062d8f98984d" + "uid": "75aa5a4b-536e-11ea-85dd-167682b5c255" }, "type": "kubernetes.io/tls" } @@ -49,7 +49,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Module\nambassador_id: tlsoriginationsecret\nname: tls\nconfig:\n upstream:\n secret: test-origination-secret\n upstream-files:\n cert_chain_file: /tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt\n private_key_file: /tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: tlsoriginationsecret-http\nprefix: /TLSOriginationSecret/\nservice: tlsoriginationsecret-http\ntls: upstream\nambassador_id: tlsoriginationsecret\n\n---\napiVersion: ambassador/v0\nkind: Mapping\nname: tlsoriginationsecret-http-files\nprefix: /TLSOriginationSecret-files/\nservice: tlsoriginationsecret-http\ntls: upstream-files\nambassador_id: tlsoriginationsecret\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Module\\nambassador_id: tlsoriginationsecret\\nname: tls\\nconfig:\\n upstream:\\n secret: test-origination-secret\\n upstream-files:\\n cert_chain_file: /tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.crt\\n private_key_file: /tmp/ambassador/snapshots/default/secrets-decoded/test-origination-secret/F94E4DCF30ABC50DEF240AA8024599B67CC03991.key\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tlsoriginationsecret-http\\nprefix: /TLSOriginationSecret/\\nservice: tlsoriginationsecret-http\\ntls: upstream\\nambassador_id: tlsoriginationsecret\\n\\n---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tlsoriginationsecret-http-files\\nprefix: /TLSOriginationSecret-files/\\nservice: tlsoriginationsecret-http\\ntls: upstream-files\\nambassador_id: tlsoriginationsecret\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tlsoriginationsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsoriginationsecret\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tlsoriginationsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:18Z", + "creationTimestamp": "2020-02-19T23:20:46Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tlsoriginationsecret", @@ -57,24 +57,24 @@ }, "name": "tlsoriginationsecret", "namespace": "default", - "resourceVersion": "37779", + "resourceVersion": "56965", "selfLink": "/api/v1/namespaces/default/services/tlsoriginationsecret", - "uid": "24fd2456-4794-11ea-829a-062d8f98984d" + "uid": "7536fc2e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.255.43", + "clusterIP": "10.101.195.120", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31987, + "nodePort": 32660, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 32467, + "nodePort": 31319, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -97,7 +97,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlsoriginationsecret\",\"scope\":\"AmbassadorTest\",\"service\":\"tlsoriginationsecret-admin\"},\"name\":\"tlsoriginationsecret-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tlsoriginationsecret-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tlsoriginationsecret\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:19Z", + "creationTimestamp": "2020-02-19T23:20:47Z", "labels": { "kat-ambassador-id": "tlsoriginationsecret", "scope": "AmbassadorTest", @@ -105,17 +105,17 @@ }, "name": "tlsoriginationsecret-admin", "namespace": "default", - "resourceVersion": "37784", + "resourceVersion": "56973", "selfLink": "/api/v1/namespaces/default/services/tlsoriginationsecret-admin", - "uid": "25111325-4794-11ea-829a-062d8f98984d" + "uid": "759381bc-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.106.247.222", + "clusterIP": "10.103.184.27", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tlsoriginationsecret-admin", - "nodePort": 32678, + "nodePort": 32058, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -136,33 +136,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlsoriginationsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsoriginationsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8123},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8486}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tlsoriginationsecret\",\"scope\":\"AmbassadorTest\"},\"name\":\"tlsoriginationsecret-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8124},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8487}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:19Z", + "creationTimestamp": "2020-02-19T23:20:48Z", "labels": { "kat-ambassador-id": "tlsoriginationsecret", "scope": "AmbassadorTest" }, "name": "tlsoriginationsecret-http", "namespace": "default", - "resourceVersion": "37791", + "resourceVersion": "56995", "selfLink": "/api/v1/namespaces/default/services/tlsoriginationsecret-http", - "uid": "252d9839-4794-11ea-829a-062d8f98984d" + "uid": "764723ba-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.138.151", + "clusterIP": "10.106.245.199", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8123 + "targetPort": 8124 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8486 + "targetPort": 8487 } ], "selector": { diff --git a/python/tests/gold/tracingexternalauthtest/bootstrap-ads.json b/python/tests/gold/tracingexternalauthtest/bootstrap-ads.json index 007d6f7aac..b9ce6d4d2a 100644 --- a/python/tests/gold/tracingexternalauthtest/bootstrap-ads.json +++ b/python/tests/gold/tracingexternalauthtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tracingexternalauthtest-default", "id": "test-id" diff --git a/python/tests/gold/tracingexternalauthtest/snapshots/econf.json b/python/tests/gold/tracingexternalauthtest/snapshots/econf.json index a177d05587..c8d64f3e38 100644 --- a/python/tests/gold/tracingexternalauthtest/snapshots/econf.json +++ b/python/tests/gold/tracingexternalauthtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -124,14 +137,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "generate_request_id": true, @@ -477,20 +493,18 @@ }, "server_name": "envoy", "stat_prefix": "ingress_http", - "tracing": { - "operation_name": "egress" - }, + "tracing": {}, "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "OUTBOUND" } ] } diff --git a/python/tests/gold/tracingexternalauthtest/snapshots/snapshot.yaml b/python/tests/gold/tracingexternalauthtest/snapshots/snapshot.yaml index 6ef233432d..fbe89e1ed4 100644 --- a/python/tests/gold/tracingexternalauthtest/snapshots/snapshot.yaml +++ b/python/tests/gold/tracingexternalauthtest/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: TracingService\nname: tracing-auth\nservice: zipkin-auth:9411\ndriver: zipkin\nambassador_id: tracingexternalauthtest\n\n---\napiVersion: ambassador/v0\nkind: AuthService\nname: tracingexternalauthtest-ahttp-auth\nauth_service: \"tracingexternalauthtest-ahttp-auth\"\npath_prefix: \"/extauth\"\nallowed_headers:\n- Requested-Status\n- Requested-Header\nambassador_id: tracingexternalauthtest\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: TracingService\\nname: tracing-auth\\nservice: zipkin-auth:9411\\ndriver: zipkin\\nambassador_id: tracingexternalauthtest\\n\\n---\\napiVersion: ambassador/v0\\nkind: AuthService\\nname: tracingexternalauthtest-ahttp-auth\\nauth_service: \\\"tracingexternalauthtest-ahttp-auth\\\"\\npath_prefix: \\\"/extauth\\\"\\nallowed_headers:\\n- Requested-Status\\n- Requested-Header\\nambassador_id: tracingexternalauthtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingexternalauthtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tracingexternalauthtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:45Z", + "creationTimestamp": "2020-02-19T23:21:40Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tracingexternalauthtest", @@ -31,24 +31,24 @@ }, "name": "tracingexternalauthtest", "namespace": "default", - "resourceVersion": "38314", + "resourceVersion": "57682", "selfLink": "/api/v1/namespaces/default/services/tracingexternalauthtest", - "uid": "34b916c9-4794-11ea-829a-062d8f98984d" + "uid": "95932cc8-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.221.91", + "clusterIP": "10.108.234.167", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30436, + "nodePort": 31982, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30365, + "nodePort": 31073, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\",\"service\":\"tracingexternalauthtest-admin\"},\"name\":\"tracingexternalauthtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tracingexternalauthtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tracingexternalauthtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:46Z", + "creationTimestamp": "2020-02-19T23:21:42Z", "labels": { "kat-ambassador-id": "tracingexternalauthtest", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "tracingexternalauthtest-admin", "namespace": "default", - "resourceVersion": "38329", + "resourceVersion": "57698", "selfLink": "/api/v1/namespaces/default/services/tracingexternalauthtest-admin", - "uid": "3526ca73-4794-11ea-829a-062d8f98984d" + "uid": "96a31d23-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.53.158", + "clusterIP": "10.101.4.189", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tracingexternalauthtest-admin", - "nodePort": 30218, + "nodePort": 32707, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingexternalauthtest-ahttp-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"backend\":\"tracingexternalauthtest-ahttp-auth\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:50Z", + "creationTimestamp": "2020-02-19T23:21:48Z", "labels": { "kat-ambassador-id": "tracingexternalauthtest", "scope": "AmbassadorTest" }, "name": "tracingexternalauthtest-ahttp-auth", "namespace": "default", - "resourceVersion": "38378", + "resourceVersion": "57748", "selfLink": "/api/v1/namespaces/default/services/tracingexternalauthtest-ahttp-auth", - "uid": "37bf488f-4794-11ea-829a-062d8f98984d" + "uid": "9a0f1d3f-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.185.70", + "clusterIP": "10.110.108.134", "ports": [ { "name": "http", @@ -155,33 +155,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tracing_target_mapping\nprefix: /target/\nservice: tracingexternalauthtest-http\nambassador_id: tracingexternalauthtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping\\nprefix: /target/\\nservice: tracingexternalauthtest-http\\nambassador_id: tracingexternalauthtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingexternalauthtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8133},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8496}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping\\nprefix: /target/\\nservice: tracingexternalauthtest-http\\nambassador_id: tracingexternalauthtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingexternalauthtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8135},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8498}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:48Z", + "creationTimestamp": "2020-02-19T23:21:47Z", "labels": { "kat-ambassador-id": "tracingexternalauthtest", "scope": "AmbassadorTest" }, "name": "tracingexternalauthtest-http", "namespace": "default", - "resourceVersion": "38357", + "resourceVersion": "57730", "selfLink": "/api/v1/namespaces/default/services/tracingexternalauthtest-http", - "uid": "36e35fbe-4794-11ea-829a-062d8f98984d" + "uid": "997c5286-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.108.248.217", + "clusterIP": "10.104.81.119", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8133 + "targetPort": 8135 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8496 + "targetPort": 8498 } ], "selector": { @@ -201,24 +201,24 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingexternalauthtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"zipkin-auth\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":9411,\"targetPort\":\"http\"}],\"selector\":{\"app\":\"zipkin-auth\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:48Z", + "creationTimestamp": "2020-02-19T23:21:45Z", "labels": { "kat-ambassador-id": "tracingexternalauthtest", "scope": "AmbassadorTest" }, "name": "zipkin-auth", "namespace": "default", - "resourceVersion": "38343", + "resourceVersion": "57716", "selfLink": "/api/v1/namespaces/default/services/zipkin-auth", - "uid": "36680b73-4794-11ea-829a-062d8f98984d" + "uid": "9895402e-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.187.232", + "clusterIP": "10.102.177.118", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31519, + "nodePort": 32294, "port": 9411, "protocol": "TCP", "targetPort": "http" diff --git a/python/tests/gold/tracingtest/bootstrap-ads.json b/python/tests/gold/tracingtest/bootstrap-ads.json index 71b3d500d9..c80a7a0586 100644 --- a/python/tests/gold/tracingtest/bootstrap-ads.json +++ b/python/tests/gold/tracingtest/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tracingtest-default", "id": "test-id" diff --git a/python/tests/gold/tracingtest/snapshots/econf.json b/python/tests/gold/tracingtest/snapshots/econf.json index 60ae8735c7..c1837041bb 100644 --- a/python/tests/gold/tracingtest/snapshots/econf.json +++ b/python/tests/gold/tracingtest/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -97,14 +110,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "generate_request_id": true, @@ -313,20 +329,18 @@ }, "server_name": "envoy", "stat_prefix": "ingress_http", - "tracing": { - "operation_name": "egress" - }, + "tracing": {}, "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "OUTBOUND" } ] } diff --git a/python/tests/gold/tracingtest/snapshots/snapshot.yaml b/python/tests/gold/tracingtest/snapshots/snapshot.yaml index 05a5538ebe..b3b83cefe4 100644 --- a/python/tests/gold/tracingtest/snapshots/snapshot.yaml +++ b/python/tests/gold/tracingtest/snapshots/snapshot.yaml @@ -20,45 +20,41 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: TracingService\nname: tracing\nservice: zipkin:9411\ndriver: zipkin\nambassador_id: tracingtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: TracingService\\nname: tracing\\nservice: zipkin:9411\\ndriver: zipkin\\nambassador_id: tracingtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tracingtest\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tracing_target_mapping\nprefix: /target/\nservice: tracingtest-http\nambassador_id: tracingtest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping\\nprefix: /target/\\nservice: tracingtest-http\\nambassador_id: tracingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8133},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8496}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:41Z", + "creationTimestamp": "2020-02-19T23:21:28Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tracingtest", "scope": "AmbassadorTest" }, - "name": "tracingtest", + "name": "tracingtest-http", "namespace": "default", - "resourceVersion": "38205", - "selfLink": "/api/v1/namespaces/default/services/tracingtest", - "uid": "32b06286-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57549", + "selfLink": "/api/v1/namespaces/default/services/tracingtest-http", + "uid": "8e6b2d4a-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.103.226.187", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.99.8.91", "ports": [ { "name": "http", - "nodePort": 31717, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8133 }, { "name": "https", - "nodePort": 30160, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8496 } ], "selector": { - "service": "tracingtest" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -69,34 +65,33 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\",\"service\":\"tracingtest-admin\"},\"name\":\"tracingtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tracingtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tracingtest\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"zipkin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":9411,\"targetPort\":\"http\"}],\"selector\":{\"app\":\"zipkin\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:42Z", + "creationTimestamp": "2020-02-19T23:21:28Z", "labels": { "kat-ambassador-id": "tracingtest", - "scope": "AmbassadorTest", - "service": "tracingtest-admin" + "scope": "AmbassadorTest" }, - "name": "tracingtest-admin", + "name": "zipkin", "namespace": "default", - "resourceVersion": "38213", - "selfLink": "/api/v1/namespaces/default/services/tracingtest-admin", - "uid": "32e8cc59-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57541", + "selfLink": "/api/v1/namespaces/default/services/zipkin", + "uid": "8de41237-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.104.116.252", + "clusterIP": "10.110.211.10", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "tracingtest-admin", - "nodePort": 30657, - "port": 8877, + "name": "http", + "nodePort": 30688, + "port": 9411, "protocol": "TCP", - "targetPort": 8877 + "targetPort": "http" } ], "selector": { - "service": "tracingtest" + "app": "zipkin" }, "sessionAffinity": "None", "type": "NodePort" @@ -110,41 +105,45 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tracing_target_mapping\nprefix: /target/\nservice: tracingtest-http\nambassador_id: tracingtest\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping\\nprefix: /target/\\nservice: tracingtest-http\\nambassador_id: tracingtest\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtest-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8131},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8494}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: TracingService\nname: tracing\nservice: zipkin:9411\ndriver: zipkin\nambassador_id: tracingtest\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: TracingService\\nname: tracing\\nservice: zipkin:9411\\ndriver: zipkin\\nambassador_id: tracingtest\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtest\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tracingtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:43Z", + "creationTimestamp": "2020-02-19T23:21:26Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tracingtest", "scope": "AmbassadorTest" }, - "name": "tracingtest-http", + "name": "tracingtest", "namespace": "default", - "resourceVersion": "38252", - "selfLink": "/api/v1/namespaces/default/services/tracingtest-http", - "uid": "33c95769-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57514", + "selfLink": "/api/v1/namespaces/default/services/tracingtest", + "uid": "8d1ac268-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.53.154", + "clusterIP": "10.101.65.186", + "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", + "nodePort": 30457, "port": 80, "protocol": "TCP", - "targetPort": 8131 + "targetPort": 8080 }, { "name": "https", + "nodePort": 30163, "port": 443, "protocol": "TCP", - "targetPort": 8494 + "targetPort": 8443 } ], "selector": { - "backend": "superpod-default" + "service": "tracingtest" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} @@ -155,33 +154,34 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\"},\"name\":\"zipkin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":9411,\"targetPort\":\"http\"}],\"selector\":{\"app\":\"zipkin\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtest\",\"scope\":\"AmbassadorTest\",\"service\":\"tracingtest-admin\"},\"name\":\"tracingtest-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tracingtest-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tracingtest\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:43Z", + "creationTimestamp": "2020-02-19T23:21:27Z", "labels": { "kat-ambassador-id": "tracingtest", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "tracingtest-admin" }, - "name": "zipkin", + "name": "tracingtest-admin", "namespace": "default", - "resourceVersion": "38231", - "selfLink": "/api/v1/namespaces/default/services/zipkin", - "uid": "3363abf6-4794-11ea-829a-062d8f98984d" + "resourceVersion": "57528", + "selfLink": "/api/v1/namespaces/default/services/tracingtest-admin", + "uid": "8dbabbff-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.233.250", + "clusterIP": "10.100.56.14", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "nodePort": 30192, - "port": 9411, + "name": "tracingtest-admin", + "nodePort": 31405, + "port": 8877, "protocol": "TCP", - "targetPort": "http" + "targetPort": 8877 } ], "selector": { - "app": "zipkin" + "service": "tracingtest" }, "sessionAffinity": "None", "type": "NodePort" diff --git a/python/tests/gold/tracingtestshorttraceid/bootstrap-ads.json b/python/tests/gold/tracingtestshorttraceid/bootstrap-ads.json index ccde7797fd..00bd07e110 100644 --- a/python/tests/gold/tracingtestshorttraceid/bootstrap-ads.json +++ b/python/tests/gold/tracingtestshorttraceid/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "tracingtestshorttraceid-default", "id": "test-id" diff --git a/python/tests/gold/tracingtestshorttraceid/snapshots/econf.json b/python/tests/gold/tracingtestshorttraceid/snapshots/econf.json index e605f665eb..f6bc91f15b 100644 --- a/python/tests/gold/tracingtestshorttraceid/snapshots/econf.json +++ b/python/tests/gold/tracingtestshorttraceid/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -97,14 +110,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "generate_request_id": true, @@ -313,20 +329,18 @@ }, "server_name": "envoy", "stat_prefix": "ingress_http", - "tracing": { - "operation_name": "egress" - }, + "tracing": {}, "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "OUTBOUND" } ] } diff --git a/python/tests/gold/tracingtestshorttraceid/snapshots/snapshot.yaml b/python/tests/gold/tracingtestshorttraceid/snapshots/snapshot.yaml index 14c38d4193..2c4d224180 100644 --- a/python/tests/gold/tracingtestshorttraceid/snapshots/snapshot.yaml +++ b/python/tests/gold/tracingtestshorttraceid/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: TracingService\nname: tracing-64\nservice: zipkin-64:9411\ndriver: zipkin\nconfig:\n trace_id_128bit: false\nambassador_id: tracingtestshorttraceid\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: TracingService\\nname: tracing-64\\nservice: zipkin-64:9411\\ndriver: zipkin\\nconfig:\\n trace_id_128bit: false\\nambassador_id: tracingtestshorttraceid\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"tracingtestshorttraceid\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtestshorttraceid\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"tracingtestshorttraceid\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:44Z", + "creationTimestamp": "2020-02-19T23:21:32Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "tracingtestshorttraceid", @@ -31,24 +31,24 @@ }, "name": "tracingtestshorttraceid", "namespace": "default", - "resourceVersion": "38268", + "resourceVersion": "57596", "selfLink": "/api/v1/namespaces/default/services/tracingtestshorttraceid", - "uid": "340287a1-4794-11ea-829a-062d8f98984d" + "uid": "90b27c1d-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.110.232", + "clusterIP": "10.97.132.215", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30326, + "nodePort": 30687, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 31932, + "nodePort": 31821, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtestshorttraceid\",\"scope\":\"AmbassadorTest\",\"service\":\"tracingtestshorttraceid-admin\"},\"name\":\"tracingtestshorttraceid-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"tracingtestshorttraceid-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"tracingtestshorttraceid\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:44Z", + "creationTimestamp": "2020-02-19T23:21:34Z", "labels": { "kat-ambassador-id": "tracingtestshorttraceid", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "tracingtestshorttraceid-admin", "namespace": "default", - "resourceVersion": "38273", + "resourceVersion": "57605", "selfLink": "/api/v1/namespaces/default/services/tracingtestshorttraceid-admin", - "uid": "3416f4ce-4794-11ea-829a-062d8f98984d" + "uid": "918d7645-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.78.68", + "clusterIP": "10.99.7.171", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "tracingtestshorttraceid-admin", - "nodePort": 30056, + "nodePort": 31818, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -111,33 +111,33 @@ "metadata": { "annotations": { "getambassador.io/config": "---\napiVersion: ambassador/v0\nkind: Mapping\nname: tracing_target_mapping_64\nprefix: /target-64/\nservice: tracingtestshorttraceid-http\nambassador_id: tracingtestshorttraceid\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping_64\\nprefix: /target-64/\\nservice: tracingtestshorttraceid-http\\nambassador_id: tracingtestshorttraceid\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingtestshorttraceid\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtestshorttraceid-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8132},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8495}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v0\\nkind: Mapping\\nname: tracing_target_mapping_64\\nprefix: /target-64/\\nservice: tracingtestshorttraceid-http\\nambassador_id: tracingtestshorttraceid\\n\"},\"labels\":{\"kat-ambassador-id\":\"tracingtestshorttraceid\",\"scope\":\"AmbassadorTest\"},\"name\":\"tracingtestshorttraceid-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8134},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8497}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:44Z", + "creationTimestamp": "2020-02-19T23:21:36Z", "labels": { "kat-ambassador-id": "tracingtestshorttraceid", "scope": "AmbassadorTest" }, "name": "tracingtestshorttraceid-http", "namespace": "default", - "resourceVersion": "38299", + "resourceVersion": "57655", "selfLink": "/api/v1/namespaces/default/services/tracingtestshorttraceid-http", - "uid": "345f111d-4794-11ea-829a-062d8f98984d" + "uid": "932776bd-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.80.137", + "clusterIP": "10.110.245.85", "ports": [ { "name": "http", "port": 80, "protocol": "TCP", - "targetPort": 8132 + "targetPort": 8134 }, { "name": "https", "port": 443, "protocol": "TCP", - "targetPort": 8495 + "targetPort": 8497 } ], "selector": { @@ -157,24 +157,24 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"tracingtestshorttraceid\",\"scope\":\"AmbassadorTest\"},\"name\":\"zipkin-64\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":9411,\"targetPort\":\"http\"}],\"selector\":{\"app\":\"zipkin-64\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:44Z", + "creationTimestamp": "2020-02-19T23:21:36Z", "labels": { "kat-ambassador-id": "tracingtestshorttraceid", "scope": "AmbassadorTest" }, "name": "zipkin-64", "namespace": "default", - "resourceVersion": "38284", + "resourceVersion": "57627", "selfLink": "/api/v1/namespaces/default/services/zipkin-64", - "uid": "343fb3e1-4794-11ea-829a-062d8f98984d" + "uid": "92a686b6-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.107.157.229", + "clusterIP": "10.99.212.191", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 31605, + "nodePort": 32746, "port": 9411, "protocol": "TCP", "targetPort": "http" diff --git a/python/tests/gold/unsaferegexmapping/bootstrap-ads.json b/python/tests/gold/unsaferegexmapping/bootstrap-ads.json index 4baee67bf4..1f49fb446c 100644 --- a/python/tests/gold/unsaferegexmapping/bootstrap-ads.json +++ b/python/tests/gold/unsaferegexmapping/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "unsaferegexmapping-default", "id": "test-id" diff --git a/python/tests/gold/unsaferegexmapping/snapshots/econf.json b/python/tests/gold/unsaferegexmapping/snapshots/econf.json index 7430e23dfd..e499aa18d4 100644 --- a/python/tests/gold/unsaferegexmapping/snapshots/econf.json +++ b/python/tests/gold/unsaferegexmapping/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -302,15 +318,15 @@ "stat_prefix": "ingress_http", "use_remote_address": true, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/unsaferegexmapping/snapshots/snapshot.yaml b/python/tests/gold/unsaferegexmapping/snapshots/snapshot.yaml index 143bcff05a..573480b77c 100644 --- a/python/tests/gold/unsaferegexmapping/snapshots/snapshot.yaml +++ b/python/tests/gold/unsaferegexmapping/snapshots/snapshot.yaml @@ -23,7 +23,7 @@ "getambassador.io/config": "---\napiVersion: ambassador/v2\nkind: Mapping\nname: UnsafeRegexMapping\nprefix: /UnsafeRegexMapping/\nprefix_regex: true\nhost: \"[a-zA-Z].*\"\nhost_regex: true\nregex_headers:\n X-Foo: \"^[a-z].*\"\nservice: http://unsaferegexmapping-http\nambassador_id: unsaferegexmapping\n---\napiVersion: ambassador/v2\nkind: Module\nname: ambassador\nconfig:\n regex_type: unsafe\nambassador_id: unsaferegexmapping\n", "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v2\\nkind: Mapping\\nname: UnsafeRegexMapping\\nprefix: /UnsafeRegexMapping/\\nprefix_regex: true\\nhost: \\\"[a-zA-Z].*\\\"\\nhost_regex: true\\nregex_headers:\\n X-Foo: \\\"^[a-z].*\\\"\\nservice: http://unsaferegexmapping-http\\nambassador_id: unsaferegexmapping\\n---\\napiVersion: ambassador/v2\\nkind: Module\\nname: ambassador\\nconfig:\\n regex_type: unsafe\\nambassador_id: unsaferegexmapping\\n\"},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"unsaferegexmapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"unsaferegexmapping\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"unsaferegexmapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "unsaferegexmapping", @@ -31,24 +31,24 @@ }, "name": "unsaferegexmapping", "namespace": "default", - "resourceVersion": "36106", + "resourceVersion": "55195", "selfLink": "/api/v1/namespaces/default/services/unsaferegexmapping", - "uid": "0abe258c-4794-11ea-829a-062d8f98984d" + "uid": "56ef9e0c-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.102.74.97", + "clusterIP": "10.103.125.197", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "http", - "nodePort": 30574, + "nodePort": 32522, "port": 80, "protocol": "TCP", "targetPort": 8080 }, { "name": "https", - "nodePort": 30456, + "nodePort": 31362, "port": 443, "protocol": "TCP", "targetPort": 8443 @@ -71,7 +71,7 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"unsaferegexmapping\",\"scope\":\"AmbassadorTest\",\"service\":\"unsaferegexmapping-admin\"},\"name\":\"unsaferegexmapping-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"unsaferegexmapping-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"unsaferegexmapping\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:19:34Z", + "creationTimestamp": "2020-02-19T23:19:55Z", "labels": { "kat-ambassador-id": "unsaferegexmapping", "scope": "AmbassadorTest", @@ -79,17 +79,17 @@ }, "name": "unsaferegexmapping-admin", "namespace": "default", - "resourceVersion": "36111", + "resourceVersion": "55199", "selfLink": "/api/v1/namespaces/default/services/unsaferegexmapping-admin", - "uid": "0aca16d1-4794-11ea-829a-062d8f98984d" + "uid": "56f8a372-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.101.91.199", + "clusterIP": "10.111.83.223", "externalTrafficPolicy": "Cluster", "ports": [ { "name": "unsaferegexmapping-admin", - "nodePort": 30941, + "nodePort": 31564, "port": 8877, "protocol": "TCP", "targetPort": 8877 @@ -112,19 +112,19 @@ "annotations": { "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"unsaferegexmapping\",\"scope\":\"AmbassadorTest\"},\"name\":\"unsaferegexmapping-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8083},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8446}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:19:35Z", + "creationTimestamp": "2020-02-19T23:19:56Z", "labels": { "kat-ambassador-id": "unsaferegexmapping", "scope": "AmbassadorTest" }, "name": "unsaferegexmapping-http", "namespace": "default", - "resourceVersion": "36119", + "resourceVersion": "55207", "selfLink": "/api/v1/namespaces/default/services/unsaferegexmapping-http", - "uid": "0ada0175-4794-11ea-829a-062d8f98984d" + "uid": "570b17d7-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.99.254.28", + "clusterIP": "10.105.17.87", "ports": [ { "name": "http", diff --git a/python/tests/gold/xfpredirect/bootstrap-ads.json b/python/tests/gold/xfpredirect/bootstrap-ads.json index f4c3ccedae..e7a9818f8c 100644 --- a/python/tests/gold/xfpredirect/bootstrap-ads.json +++ b/python/tests/gold/xfpredirect/bootstrap-ads.json @@ -26,6 +26,19 @@ "ads": {} } }, + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "node": { "cluster": "xfpredirect-default", "id": "test-id" diff --git a/python/tests/gold/xfpredirect/snapshots/econf.json b/python/tests/gold/xfpredirect/snapshots/econf.json index 8f1d4ab3f3..a52ea2d8f4 100644 --- a/python/tests/gold/xfpredirect/snapshots/econf.json +++ b/python/tests/gold/xfpredirect/snapshots/econf.json @@ -1,4 +1,17 @@ { + "layered_runtime": { + "layers": [ + { + "name": "static_layer", + "static_layer": { + "envoy.deprecated_features:envoy.api.v2.route.HeaderMatcher.regex_match": true, + "envoy.deprecated_features:envoy.api.v2.route.RouteMatch.regex": true, + "envoy.deprecated_features:envoy.config.filter.http.ext_authz.v2.ExtAuthz.use_alpha": true, + "envoy.deprecated_features:envoy.config.trace.v2.ZipkinConfig.HTTP_JSON_V1": true + } + } + ] + }, "static_resources": { "clusters": [ { @@ -70,14 +83,17 @@ "filter_chain_match": {}, "filters": [ { - "config": { + "name": "envoy.http_connection_manager", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.filter.network.http_connection_manager.v2.HttpConnectionManager", "access_log": [ { - "config": { + "name": "envoy.file_access_log", + "typed_config": { + "@type": "type.googleapis.com/envoy.config.accesslog.v2.FileAccessLog", "format": "ACCESS [%START_TIME%] \"%REQ(:METHOD)% %REQ(X-ENVOY-ORIGINAL-PATH?:PATH)% %PROTOCOL%\" %RESPONSE_CODE% %RESPONSE_FLAGS% %BYTES_RECEIVED% %BYTES_SENT% %DURATION% %RESP(X-ENVOY-UPSTREAM-SERVICE-TIME)% \"%REQ(X-FORWARDED-FOR)%\" \"%REQ(USER-AGENT)%\" \"%REQ(X-REQUEST-ID)%\" \"%REQ(:AUTHORITY)%\" \"%UPSTREAM_HOST%\"\n", "path": "/dev/fd/1" - }, - "name": "envoy.file_access_log" + } } ], "http_filters": [ @@ -272,15 +288,15 @@ "stat_prefix": "ingress_http", "use_remote_address": false, "xff_num_trusted_hops": 0 - }, - "name": "envoy.http_connection_manager" + } } ], "use_proxy_proto": false } ], "listener_filters": [], - "name": "ambassador-listener-8080" + "name": "ambassador-listener-8080", + "traffic_direction": "UNSPECIFIED" } ] } diff --git a/python/tests/gold/xfpredirect/snapshots/snapshot.yaml b/python/tests/gold/xfpredirect/snapshots/snapshot.yaml index 7cfc72e957..901dfffdcf 100644 --- a/python/tests/gold/xfpredirect/snapshots/snapshot.yaml +++ b/python/tests/gold/xfpredirect/snapshots/snapshot.yaml @@ -20,44 +20,41 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\"},\"name\":\"xfpredirect\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"xfpredirect\"},\"type\":\"NodePort\"}}\n" + "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nconfig:\n x_forwarded_proto_redirect: true\n use_remote_address: false\nambassador_id: xfpredirect\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: XFPRedirect\nprefix: /XFPRedirect/\nservice: xfpredirect-http\nambassador_id: xfpredirect\n", + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nconfig:\\n x_forwarded_proto_redirect: true\\n use_remote_address: false\\nambassador_id: xfpredirect\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: XFPRedirect\\nprefix: /XFPRedirect/\\nservice: xfpredirect-http\\nambassador_id: xfpredirect\\n\"},\"labels\":{\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\"},\"name\":\"xfpredirect-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8121},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8484}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" }, - "creationTimestamp": "2020-02-04T21:20:10Z", + "creationTimestamp": "2020-02-19T23:20:36Z", "labels": { - "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "xfpredirect", "scope": "AmbassadorTest" }, - "name": "xfpredirect", + "name": "xfpredirect-http", "namespace": "default", - "resourceVersion": "37616", - "selfLink": "/api/v1/namespaces/default/services/xfpredirect", - "uid": "1fb70bdf-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56772", + "selfLink": "/api/v1/namespaces/default/services/xfpredirect-http", + "uid": "6f66b6bf-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.98.253.71", - "externalTrafficPolicy": "Cluster", + "clusterIP": "10.110.255.172", "ports": [ { "name": "http", - "nodePort": 32299, "port": 80, "protocol": "TCP", - "targetPort": 8080 + "targetPort": 8121 }, { "name": "https", - "nodePort": 31986, "port": 443, "protocol": "TCP", - "targetPort": 8443 + "targetPort": 8484 } ], "selector": { - "service": "xfpredirect" + "backend": "superpod-default" }, "sessionAffinity": "None", - "type": "NodePort" + "type": "ClusterIP" }, "status": { "loadBalancer": {} @@ -68,30 +65,37 @@ "kind": "Service", "metadata": { "annotations": { - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\",\"service\":\"xfpredirect-admin\"},\"name\":\"xfpredirect-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"xfpredirect-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"xfpredirect\"},\"type\":\"NodePort\"}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"app.kubernetes.io/component\":\"ambassador-service\",\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\"},\"name\":\"xfpredirect\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8080},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8443}],\"selector\":{\"service\":\"xfpredirect\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:10Z", + "creationTimestamp": "2020-02-19T23:20:36Z", "labels": { + "app.kubernetes.io/component": "ambassador-service", "kat-ambassador-id": "xfpredirect", - "scope": "AmbassadorTest", - "service": "xfpredirect-admin" + "scope": "AmbassadorTest" }, - "name": "xfpredirect-admin", + "name": "xfpredirect", "namespace": "default", - "resourceVersion": "37620", - "selfLink": "/api/v1/namespaces/default/services/xfpredirect-admin", - "uid": "1fcb8db2-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56753", + "selfLink": "/api/v1/namespaces/default/services/xfpredirect", + "uid": "6efe6652-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.100.27.255", + "clusterIP": "10.102.90.91", "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "xfpredirect-admin", - "nodePort": 32059, - "port": 8877, + "name": "http", + "nodePort": 31298, + "port": 80, "protocol": "TCP", - "targetPort": 8877 + "targetPort": 8080 + }, + { + "name": "https", + "nodePort": 31286, + "port": 443, + "protocol": "TCP", + "targetPort": 8443 } ], "selector": { @@ -109,41 +113,37 @@ "kind": "Service", "metadata": { "annotations": { - "getambassador.io/config": "---\napiVersion: ambassador/v1\nkind: Module\nname: ambassador\nconfig:\n x_forwarded_proto_redirect: true\n use_remote_address: false\nambassador_id: xfpredirect\n---\napiVersion: ambassador/v1\nkind: Mapping\nname: XFPRedirect\nprefix: /XFPRedirect/\nservice: xfpredirect-http\nambassador_id: xfpredirect\n", - "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{\"getambassador.io/config\":\"---\\napiVersion: ambassador/v1\\nkind: Module\\nname: ambassador\\nconfig:\\n x_forwarded_proto_redirect: true\\n use_remote_address: false\\nambassador_id: xfpredirect\\n---\\napiVersion: ambassador/v1\\nkind: Mapping\\nname: XFPRedirect\\nprefix: /XFPRedirect/\\nservice: xfpredirect-http\\nambassador_id: xfpredirect\\n\"},\"labels\":{\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\"},\"name\":\"xfpredirect-http\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"http\",\"port\":80,\"protocol\":\"TCP\",\"targetPort\":8120},{\"name\":\"https\",\"port\":443,\"protocol\":\"TCP\",\"targetPort\":8483}],\"selector\":{\"backend\":\"superpod-default\"}}}\n" + "kubectl.kubernetes.io/last-applied-configuration": "{\"apiVersion\":\"v1\",\"kind\":\"Service\",\"metadata\":{\"annotations\":{},\"labels\":{\"kat-ambassador-id\":\"xfpredirect\",\"scope\":\"AmbassadorTest\",\"service\":\"xfpredirect-admin\"},\"name\":\"xfpredirect-admin\",\"namespace\":\"default\"},\"spec\":{\"ports\":[{\"name\":\"xfpredirect-admin\",\"port\":8877,\"targetPort\":8877}],\"selector\":{\"service\":\"xfpredirect\"},\"type\":\"NodePort\"}}\n" }, - "creationTimestamp": "2020-02-04T21:20:10Z", + "creationTimestamp": "2020-02-19T23:20:36Z", "labels": { "kat-ambassador-id": "xfpredirect", - "scope": "AmbassadorTest" + "scope": "AmbassadorTest", + "service": "xfpredirect-admin" }, - "name": "xfpredirect-http", + "name": "xfpredirect-admin", "namespace": "default", - "resourceVersion": "37627", - "selfLink": "/api/v1/namespaces/default/services/xfpredirect-http", - "uid": "1fe08770-4794-11ea-829a-062d8f98984d" + "resourceVersion": "56762", + "selfLink": "/api/v1/namespaces/default/services/xfpredirect-admin", + "uid": "6f4c30ad-536e-11ea-85dd-167682b5c255" }, "spec": { - "clusterIP": "10.111.75.206", + "clusterIP": "10.101.165.169", + "externalTrafficPolicy": "Cluster", "ports": [ { - "name": "http", - "port": 80, - "protocol": "TCP", - "targetPort": 8120 - }, - { - "name": "https", - "port": 443, + "name": "xfpredirect-admin", + "nodePort": 30819, + "port": 8877, "protocol": "TCP", - "targetPort": 8483 + "targetPort": 8877 } ], "selector": { - "backend": "superpod-default" + "service": "xfpredirect" }, "sessionAffinity": "None", - "type": "ClusterIP" + "type": "NodePort" }, "status": { "loadBalancer": {} diff --git a/python/tests/t_listeneridletimeout.py b/python/tests/t_listeneridletimeout.py index 65cee14786..ed4b3e3d27 100644 --- a/python/tests/t_listeneridletimeout.py +++ b/python/tests/t_listeneridletimeout.py @@ -32,7 +32,7 @@ def queries(self): yield Query(self.url("config_dump"), phase=2) def check(self): - expected_val = '30.000s' + expected_val = '30s' actual_val = '' body = json.loads(self.results[0].body) for config_obj in body.get('configs'): @@ -45,7 +45,7 @@ def check(self): for filters in filter_chains: for filter in filters.get('filters'): if filter.get('name') == 'envoy.http_connection_manager': - filter_config = filter.get('config') + filter_config = filter.get('typed_config') common_http_protocol_options = filter_config.get('common_http_protocol_options') if common_http_protocol_options: actual_val = common_http_protocol_options.get('idle_timeout', '') @@ -56,4 +56,4 @@ def check(self): assert False, "Expected to find common_http_protocol_options.idle_timeout property on listener" else: assert False, "Expected to find common_http_protocol_options property on listener" - assert found_idle_timeout, "Expected common_http_protocol_options.idle_timeout = {}, Got common_http_protocol_options.idle_timeout = {}".format(expected_val, actual_val) \ No newline at end of file + assert found_idle_timeout, "Expected common_http_protocol_options.idle_timeout = {}, Got common_http_protocol_options.idle_timeout = {}".format(expected_val, actual_val) diff --git a/python/tests/t_logservice.py b/python/tests/t_logservice.py index 86ec289a12..f301483963 100644 --- a/python/tests/t_logservice.py +++ b/python/tests/t_logservice.py @@ -123,7 +123,7 @@ def check(self): for dal in config_obj.get('dynamic_active_listeners'): for filter_chain in dal.get('listener').get('filter_chains'): for filter_obj in filter_chain.get('filters'): - access_logs = filter_obj.get('config').get('access_log') + access_logs = filter_obj.get('typed_config').get('access_log') found_configured_access_log = False for access_log in access_logs: if access_log.get('name') == 'envoy.http_grpc_access_log' and access_log.get('config').get('common_config').get('grpc_service').get('envoy_grpc').get('cluster_name') == 'cluster_logging_stenography_25565_default':