Merge changes up to istio-proxy:release-1.1.#40
Conversation
Signed-off-by: knightXun <100481562@qq.com>
Signed-off-by: Suhail Patel <me@suhailpatel.com>
Signed-off-by: Dan Zhang <danzh@google.com>
1) Add request/response trailer matching 2) Output request/response trailers 3) Refactor matchers to reduce boilerplate and make it harder to make mistakes when adding new update functions. 4) Split out a match configuration for HTTP request and response into individual things like request headers, request trailers, etc. This will make it easier and more logical to add various types of body matching and wire it up using the existing and/or logic. Signed-off-by: Matt Klein <mklein@lyft.com>
Adds support for fixing errors via the pedantic spell checker. Runs pedantic comment spelling checking during builds. Adds the location where python deps are installed during do_ci.sh (to avoid spurrious format check errors). *Risk Level*: low *Testing*: checks comment spelling *Docs Changes*: n/a *Release Notes*: n/a Signed-off-by: Stephan Zuercher <zuercher@gmail.com>
Signed-off-by: Dan Zhang <danzh@google.com>
Per: https://github.com/envoyproxy/envoy/blob/master/include/envoy/http/header_map.h#L148 `setReference()` needs a std::string ref that will live beyond the lifetime of a request/response, but it's currently receiving a string literal which is used to construct a temporary std::string. So instead pass an integer. Signed-off-by: Raul Gutierrez Segales <rgs@pinterest.com>
Signed-off-by: Joshua Marantz <jmarantz@google.com>
… files (envoyproxy#5775) (sort of) part of envoyproxy#5638 This and the follow-up should remove a bunch of code from all the integration tests which link http_integration.cc Risk Level: low (test only) Testing: integration tests pass Docs Changes: n/a Release Notes: n/a Signed-off-by: Alyssa Wilk <alyssar@chromium.org>
Signed-off-by: Kim Saabye Pedersen <k.epost@gmail.com>
…xy#5760) Risk Level: Low (logging only) Testing: new unit tests Docs Changes: n/a Release Notes: not included Part of envoyproxy#5559 Signed-off-by: Alyssa Wilk <alyssar@chromium.org>
E.g. from https://circleci.com/gh/envoyproxy/envoy/159452?utm_campaign=vcs-integration-link&utm_medium=referral&utm_source=github-build-link we're seeing: Error: No available formula with the name "bazelbuild/tap/bazel" Please tap it and then try again: brew tap bazelbuild/tap Looks like some additional steps are needed for the brew tap based on https://docs.bazel.build/versions/master/install-os-x.html. Risk Level: Low Testing: CI Fixes envoyproxy#5830 Signed-off-by: Harvey Tuch <htuch@google.com>
…y#5826) * test: fix several clang-tidy warnings from envoyproxy#5811 Signed-off-by: Joshua Marantz <jmarantz@google.com>
…ts of a common TestBase class. (envoyproxy#5837) Signed-off-by: Joshua Marantz <jmarantz@google.com>
…ec checks (envoyproxy#5773) Signed-off-by: Auni Ahsan <auni@google.com>
Signed-off-by: Maxime Bedard <maxime.bedard@shopify.com>
…roxy#5764) As discussed with @snowp in [envoyproxy/java-control-plane#87 (comment)](envoyproxy/java-control-plane#87 (comment)) and [envoyproxy/java-control-plane#87 (comment)](envoyproxy/java-control-plane#87 (comment)), adding these options will avoid the risk of having API breaking changes on the generated java code as the proto files evolve. Risk Level_: Medium Note that e.g. [envoyproxy/java-control-plane](https://github.com/envoyproxy/java-control-plane) will have to do a refactoring when they sync the proto files next time. Signed-off-by: Penn (Dapeng) Zhang <zdapeng@google.com>
…proxy#5832) Add quic_client_stats_impl.h to QUICHE platform implementation, with everything being no-op. _Risk Level_: minimal: code not used yet _Testing_: bazel test test/extensions/quic_listeners/quiche/platform:quic_platform_test --test_output=all _Docs Changes_: none _Release Notes_: none Signed-off-by: Bin Wu <wub@google.com>
Disable quic_platform_test by default. Enable it only when "--define quiche=enabled" is specified in the bazel command line. This is needed to workaround a issue with --experimental_remap_main_repo + ci asan build, see here for details. Risk Level: minimal: build only Testing: I introduced a failure in quic_platform_test, then confirmed quic_platform_test still passes by default(since it does nothing), and failed when "--define enable_quiche=enabled" is specified. Signed-off-by: Bin Wu <wub@google.com>
…stem in various places. (envoyproxy#5660) * Put Event::TimeSystem& into API and plumb that instead of TimeSystem in various places. Signed-off-by: Joshua Marantz <jmarantz@google.com>
Fix some incorrect comments about the range of valid host weights, and updated Maglev LB implementation to assume weights are always non-zero. Risk Level: Low Testing: Existing tests, including maglev_lb_test and upstream_impl_test. Signed-off-by: Dan Rosen <mergeconflict@google.com>
Do not allow Filesystem::fileReadToEnd() for files in /dev, /proc and /sys. Risk Level: Low Testing: New unit test. Fixes: envoyproxy#3170 Signed-off-by: Sergey Glushchenko <gsserge@gmail.com>
This class allows clients to map keys to connection pools, returning the existing pool if it already exists. Signed-off-by: Kyle Larose <kyle@agilicus.com>
Due to the external_cmake changes (amongst others), we've regressed on the fuzzer build. We need to do the final link now inside the cc_binary, as external_cmake has issues with transitivity and unrelated binaries (see bazel-contrib/rules_foreign_cc#222). Risk level: Low Testing: oss-fuzz Docker build for Envoy's fuzzers. Signed-off-by: Harvey Tuch <htuch@google.com>
Signed-off-by: Penn (Dapeng) Zhang <zdapeng@google.com>
Signed-off-by: William DeCoste <bdecoste@gmail.com>
* fuzz: avoid leaking time system singleton. Previously we were seeing: FAIL: Active singletons exist: Unexpected active singleton: N5Envoy5Event25SingletonTimeSystemHelperE at the end of each fuzz test. Risk level: Low Testing: bazel test //test/common/access_log:access_log_formatter_fuzz_test --test_output=streamed --test_arg="-l trace" -c dbg --config=clang-asan --test_output=all Signed-off-by: Harvey Tuch <htuch@google.com>
Signed-off-by: Lizan Zhou <lizan@tetrate.io>
Description: Moves integration tests that are dependent on the ssl implementation (e.g. boringssl vs openssl) to extensions. See envoyproxy#5762 Risk Level: Low Testing: All standard tests passing Docs Change: None Release Notes: None Signed-off-by: William DeCoste <bdecoste@gmail.com>
…eritance order. (envoyproxy#5855) Signed-off-by: Joshua Marantz <jmarantz@google.com> Previously the TestBase destructor was running the singleton quiescence check and printing the results, but not actually failing the tests.. There are two changes here: * use a RELEASE_ASSERT in the quiescence check helper function, rather than returning a bool * change a bunch of tests that multiply inherited from the TestBase class to always specify the TestBase class first.
- `realpath` is now in `coreutils`. Signed-off-by: Per Lundberg <perlun@gmail.com>
…onst (envoyproxy#5793) Signed-off-by: Randy Smith <rdsmith@google.com>
* Modified docs and variable names Signed-off-by: Randy Smith <rdsmith@google.com> * Changed name in a couple of neglected files Signed-off-by: Randy Smith <rdsmith@google.com> * Fixed format Signed-off-by: Randy Smith <rdsmith@google.com> * Fix typo Signed-off-by: Randy Smith <rdsmith@google.com> * Changed name of coroutines Signed-off-by: Randy Smith <rdsmith@google.com> * Fixed format Signed-off-by: Randy Smith <rdsmith@google.com>
Fixes oss-fuzz issue https://oss-fuzz.com/testcase-detail/5137346677178368. Risk level: Low Testing: Corpus entry added. Signed-off-by: Harvey Tuch <htuch@google.com>
…xy#5870) Fixes oss-fuzz issue https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=12293. Risk level: Low Testing: Corpus entry and unit test added. Signed-off-by: Harvey Tuch <htuch@google.com>
…5849) * Make the creation of a test time system threadsafe. I am not aware of a situation where we might race the creation of our thread-system singleton between two threads, but it's not that hard or slow to make that work. So it seems easier to do this proactively than to wait for a flake. Signed-off-by: Joshua Marantz <jmarantz@google.com>
We were still failing ClusterFuzz builds for ubsan, another external_cmake regression. Risk level: Low Testing: oss-fuzz undefined Docker build. Signed-off-by: Harvey Tuch <htuch@google.com>
Modify EVP_MD_CTX instantiation in common/crypto to support openssl. Instantiating via "EVP_MD_CTX ctx" fails compilation. Openssl required EVP_MD_CTX_new(). Risk Level: Low Testing: Standard tests pass Signed-off-by: William DeCoste <bdecoste@gmail.com>
Mark //test/test_common:test_base testonly for environments that enforce that bit. Risk Level: Low: Build change, any errors should be quick to surface. Testing: Built all of envoy. Signed-off-by: Randy Smith <rdsmith@google.com>
Change the gen_compilation_database.py command to accept a --vscode flag. If this flag is on, create such a compilation database which can be used by Visual Studio Code for code analysis. At the moment it only changes "-iquote" compiler options to old-style "-I" options to prevent Visual Studio Code from falling back to tag parser mode. *Risk Level*: low *Testing*: Visual Studio Code v1.31 *Docs Changes*: N/A *Release Notes*: N/A Signed-off-by: Ismo Puustinen <ismo.puustinen@intel.com>
Same issue as in envoyproxy#4940, but on the config_validation side. Risk level: Low Testing: corpus entry added. Signed-off-by: Harvey Tuch <htuch@google.com>
Using buildifier failed without virtualenv so noting in the bazel README file. Also did some cleanup of the ordered list to always use "1.", see https://guides.github.com/features/mastering-markdown/#syntax. Risk Level: Low Signed-off-by: Frank Fort <ffort@google.com>
…voyproxy#5649) Adds a DEGRADED HealthStatus value that can be set on a host through LoadAssignment, allowing for a host to be marked degraded without the need for active health checking. Moves the mapping of EDS flag to health flag to inside `registerHostForPriority`, which means that we're now consistently setting the EDS health flag for EDS/STATIC/STRICT_DNS/LOGICAL_DNS. Simplifies the check for whether the health flag value of a host has changed during EDS updates. Adds tests for the EDS mapping as well as tests to verify that we're honoring the EDS flag for non-EDS cluster types. Risk Level: High, substantial refactoring of how we determine whether health flag has changed. Testing: UTs coverage for new health flag values. Docs Changes: n/a Release Notes: n/a Fixes envoyproxy#5637 envoyproxy#5063 Signed-off-by: Snow Pettersen <snowp@squareup.com>
…yproxy#5758) Add quic_logging_impl.(h|cc) and unit tests to QUICHE platform implementation. QUICHE code uses stream-style logging macros to do logging, e.g.: QUIC_LOG(INFO) << "x = " << x; The implementation in this PR uses a temporary std::ostringstream (one per macro invocation) to convert the stream into a std::string, then send the string to spdlog. Risk Level: minimal: code not used yet Testing: [Unit test in release mode] bazel test --experimental_remap_main_repo -c opt test/extensions/quic_listeners/quiche/platform:quic_platform_test [Unit test in debug mode] bazel test --experimental_remap_main_repo test/extensions/quic_listeners/quiche/platform:quic_platform_test Signed-off-by: Bin Wu <wub@google.com>
Now that envoyproxy#5218 has been merged, we can enable release builds on Windows. This PR updates `ci/do_ci.ps1` to build release + fastbuild versions in addition to debug versions. It also removes support for build scripts in `ci/build_container/build_recipes/` on Windows, as there is no clean way to pass information from Bazel regarding the type of build to those scripts Risk Level: Low Testing: `bazel build //source/... && bazel test //test/...` Signed-off-by: Sam Smith <sesmith177@gmail.com>
Remove a superfluous line of three back-ticks that caused improper formatting of the http_proxy section. Signed-off-by: Larry West <Larry_West@intuit.com>
…proxy#5814) This PR uses hash func that generates deterministic result for proto. Background - When integrate envoy SDS with Istio, we found envoy sends out multiple requests for same sdsconfig(details in envoyproxy#5744); After some debugging, we found the issue describes in [protocolbuffers/protobuf#5668](protocolbuffers/protobuf#5668). Signed-off-by: Quanjie Lin <quanlin@google.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: If they are not already assigned, you can assign the PR to them by writing The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
So there's good news and bad news. 👍 The good news is that everyone that needs to sign a CLA (the pull request submitter and all commit authors) have done so. Everything is all good there. 😕 The bad news is that it appears that one or more commits were authored or co-authored by someone other than the pull request submitter. We need to confirm that all authors are ok with their commits being contributed to this project. Please have them confirm that here in the pull request. Note to project maintainer: This is a terminal state, meaning the ℹ️ Googlers: Go here for more info. |
Signed-off-by: Pengyuan Bian <bianpengyuan@google.com>
Merge changes up to istio-proxy:release-1.1.