Proto commits in envoyproxy/envoy-perf

These 11 commits are when the Protocol Buffers files have changed:

Commit:e1804e7
Author:Xin Huang
Committer:GitHub

[Salvo] Add single test mode in Salvo (#133) Fix #132. Add `test_single_image` and `test_single_commit` option to enable single test mode, which is helpful to the scenario that someone want to test different configuration based on one specific envoy image/commit. Signed-off-by: Huang Xin <xin1.huang@intel.com>

The documentation is generated from this commit.

Commit:1711391
Author:Alvin Baptiste
Committer:GitHub

Add Source Manager implementation and tests (#92) This PR adds the implementation for the source manager object. This source manager manipulates source trees and its purpose is to have a single interface through which all artifacts are compiled. We also updated the `source.proto` to allow users to specify options that are supplied to bazel. This allows us to build an Envoy binary that does not reject NightHawks attempts to enable profiling. Signed-off-by: abaptiste <abaptiste@users.noreply.github.com>

Commit:5d00235
Author:Alvin Baptiste
Committer:GitHub

Add the ability to specify additional benchmark images (#80) Extend the `source` and `api` protos so that users can specify an arbitrary number of benchmark images. The intent is to give the users the ability to have more than two points for benchmarks. In the current mode, the specified commit hash and one commit prior is tested. With this change, the user can manually specify other points for which we test. Signed-off-by: abaptiste <abaptiste@users.noreply.github.com>

Commit:fbaf0cb
Author:Alvin Baptiste
Committer:GitHub

Fully dockerized flow skeleton (#74) This change adds a skeleton for the fully dockerized benchmark flow. This benchmark method uses docker images for Envoy, the NightHawk benchmark framework, and the NightHawk binaries. Users specify a location where external tests are mapped into the benchmark container and executed. Signed-off-by: Alvin Baptiste <alvinsb@gmail.com>

Commit:5c434c8
Author:Alvin Baptiste
Committer:GitHub

[salvo] Initial commit for benchmark abstraction framework (#73) This is the initial 'official' commit for the Salvo tool. This aims to abstract the execution of nighthawk to benchmark a given envoy version. See this issue for some background. The two design docs for this project are referenced here. In this commit, salvo is placed into a separate directory of the envoy-perf repository, and is referenced from the main README.md. Testing: Unit tests included, Address as many pylint3 issues as feasible [#Issue] envoyproxy/envoy#11266 Signed-off-by: Alvin Baptiste <alvinsb@gmail.com>

Commit:02d4e01
Author:Otto van der Schaaf
Committer:htuch

Remove nighthawk now that it has moved (#71) Nighthawk moved out of its nest and has its own repository over at https://github.com/envoyproxy/nighthawk This PR removes everything Nighthawk-related from here. Thanks envoy-perf! Signed-off-by: Otto van der Schaaf <oschaaf@we-amp.com>

This commit does not contain any .proto files.

Commit:94a8431
Author:Otto van der Schaaf
Committer:htuch

Nighthawk output improvements (#68) * Use the proto as a base to compute CLI output in ConsoleOutputFormatterImpl to ensure generic behavior across output formats (it used to do that from the native objects). * Add --format=[human|json|yaml] option * Write per-worker statistics in json/yaml output * Clearer CLI output * Factorize OutputFormatter creation * Stop using std::err. * Stop writing files, we probably want to do that elsewhere.

Commit:fd99146
Author:Otto van der Schaaf
Committer:htuch

BenchmarkClient & WorkerImpl (#54) This PR contains the benchmark client and threader worker Signed-off-by: Otto van der Schaaf <oschaaf@we-amp.com>

Commit:408c9d8
Author:Otto van der Schaaf
Committer:htuch

Nighthawk: sync up what we have right now with we-amp/nighthawk (#51) - Fix hdrhistogram_c build - Update Envoy submodule - Add a bunch of typedefs - Update output.proto - Tidy up some #includes - Switch to TimeSource instead of TimeSystem where applicable - Add an 'id' field to Statistic which helps use them in a more generic way - Sequencer takes ownership of the RateLimiter that gets passed in Signed-off-by: Otto van der Schaaf <oschaaf@we-amp.com>

Commit:89caa94
Author:Otto van der Schaaf
Committer:htuch

Nighthawk: Statistics and updates to tooling & CI (#48) This adds a statistics interface / classes / tests, hdr_histogram as a submodule, and a bunch of updates to `tools/` and the `.circleci/`. Signed-off-by: Otto van der Schaaf <oschaaf@we-amp.com>

Commit:2d343af
Author:Otto van der Schaaf
Committer:htuch

Nighthawk: options, rate_limiter, and utility (#45) Signed-off-by: Otto van der Schaaf <oschaaf@we-amp.com>