summaryrefslogtreecommitdiffstats
path: root/extras/hs-test
AgeCommit message (Collapse)AuthorFilesLines
2024-07-23prom: concurrent connections fixMatus Fabian2-1/+35
Type: fix Change-Id: I57814edb735e9dac916f2e01de95ccfb739ce655 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-23http: state machine fixMatus Fabian2-1/+100
When client sends second request without waiting for response of the first request http_ts_rx_callback should drop request (pipelining is not supported) instead of invoking return to state machine which can lead to erroneous state, e.g. reading random data from server app fifo. Added simple http static server url handler for testing to simulate long running request processing, for now hardcoded delay 5 seconds. Type: fix Change-Id: Ied9f7e2e4ee64c982f045c0f7f99a2dc5d7a2108 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-23http: return more than data from server appMatus Fabian2-13/+119
Server app could return headers in front of body/data buffer. Offers apis for building and serialization of headers section. HTTP layer now only add Date, Server and Content-Lengths headers, rest is up to app. Well known header names are predefined. Type: improvement Change-Id: If778bdfc9acf6b0d11a48f0a745a3a56c96c2436 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-22hs-test: memory leak testingMatus Fabian7-2/+193
add infra for memory leak testing Type: test Change-Id: I882e8dbb360597cdb82ad52682725f7d39b2df24 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-07-19hs-test: fix docker log output when logs are emptyAdrian Villin1-1/+8
- removed "==> /dev/null <==" and "tail: cannot open..." lines when docker logs are empty Type: test Change-Id: Ia51f7aa41d2c6c04c0adcb82142abfd45fbe2728 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-07-17hs-test: use docker sdkAdrian Villin8-101/+340
Type: test Change-Id: I9d6b15ca6a9aac3343e10f480dec43c4c538f1b7 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-07-17hs-test: minor cpu pinning suite improvementsAdrian Villin3-16/+29
- added max cpu check for CI - added a check for Ip4AddrAllocator: fixes a case where teardown panics if a test crashes before allocator gets initialized Type: test Change-Id: Ica12366cd79d77801964dfbdc8ee7c9969b4a9ce Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-07-17hs-test: exit immediately if docker build failsAdrian Villin1-2/+2
Type: test Change-Id: I299d023ce59b931697352c54e4796ba0af2ab1af Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-07-10hs-test: quick fix for CpuPinningSuiteAdrian Villin1-1/+8
Type: test Change-Id: Iaed08fe23a63562c99012bd469ca3f3271be2564 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-07-09hs-test: Add CPU pinning test suiteHadi Rayan Al-Sandid6-12/+201
Type: test Added suite to verify that VPP launches with provided CPU pinning configurations. CPU configuration is specified per-test. Change-Id: Ic283339676d3b24636fc21156a09a192c1a8d8da Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
2024-07-08hs-test: add missing packages to install-depsDave Wallace1-1/+2
Type: test Change-Id: I2730debc7ea9256bf27208a2662f920edcd6826c Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-07-08hs-test: CPU allocation improvementsAdrian Villin5-47/+179
- Release build runs on numa node0, debug on node1. Using the last digit of a build number to reserve 4 cores per test mmeans we can run 20 jobs (10 release, 10 debug) on the same machine, assuming we have 111 cores available (not counting core 0). Can be increased if needed, there are still some cores left. - Added separate numa aware cpu allocation - Added CPU0=true|false (useful for users with 4c/8t) Type: test Change-Id: Iba8e492a4e01a7f457e49112303887a2a27f6af9 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-28hs-test: cat summary file after a failed test runAdrian Villin2-1/+3
- as per Florin's request Type: test Change-Id: Id76fda0e2dfac7e58b703a8d6f096aa7b5be31c7 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-25hs-test: return error if connecting to vpp failsHadi Rayan Al-Sandid1-0/+1
Type: fix Fix case where no error code would be returned if vpp was launched, but then exited due to invalid configuration. Change-Id: I54d526629a2ee0206227615ffb6cb658779f93a0 Signed-off-by: Hadi Rayan Al-Sandid <halsandi@cisco.com>
2024-06-24hs-test: move nginx tests into one fileMatus Fabian3-152/+153
Type: test Change-Id: Ie525636c6299a8306cba45e72f8ee6c9da6d6e4f Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-06-24hs-test: added interrupt mode testsAdrian Villin6-7/+55
Type: test Change-Id: I327fa1a4ea23a3af3aa33e5260367426a11e7b4f Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-21hs-test: cache docker build in local filesystemDave Wallace1-8/+24
- when running in the CI, cache the docker build layers in the local filesystem to allow docker executor images to contain cached docker build layers Type: test Change-Id: Ie728a8370d3fb8144d01dff566aaa846ca6fd81b Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-06-19hs-test: fix LDPreloadIperfVppTestAdrian Villin4-3/+16
- fixed ldpreload path (debug build) Type: test Change-Id: Ib2ab58b32ffd87a78189464b599f7bbc4f05c175 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-14hs-test: output docker build command for ci console logDave Wallace7-26/+26
- clean up shellcheck warnings - rename extras/hs-test/test script - add -x attribute to compress script for consistancy Type: test Change-Id: I5d1a9d16eeaff18562461b1e445e32ac696266d3 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-06-14hs-test: separate infra from testsAdrian Villin24-1179/+1179
- most functions and vars now start with a capital letter: needed to access them outside the package that declares them - updated README.md - very minor changes in MAKEFILE Type: test Change-Id: I4b5a194f08f09d59e372e57da6451fbb5a1de4da Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-13hs-test: added cleanup targetAdrian Villin2-7/+41
- Also added checkstyle-go and fixstyle-go to 'make help' Type: make Change-Id: I5402efa02bbbc54a20db8f54b0488c58a62ffaa1 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-13http: return more than url to server appMatus Fabian5-4/+402
Provide all bytes as received from transport as data in the http message to server. Additionally provide offset and length of target path, target query, headers and body. Offers apis for parsing of headers, percent decoding, target path/query syntax verification. Type: improvement Change-Id: Idbe6f13afa378650cc5212ea7d3f9319183ebbbe Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-06-12hs-test: improved suite teardown and replaced PIDs with PPIDsAdrian Villin5-49/+57
- Fixed an issue where containers wouldn't stop and get removed when a test run is interrupted - Replaced PIDs with Ginkgo process indexes + PPIDs - Fixed CPU allocation for envoy and nginx-ldp containers - All container logs should now get saved properly Type: test Change-Id: I4c737c1d326390494c0dda1ec6d3fc1f04f51663 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-12hs-test: added go style targetsAdrian Villin1-4/+29
- added checkstyle-go and fixstyle-go - comments in stats_fs.go were missing a space Type: make Change-Id: I520acab5ff61eaf9d0ccfd9425bdc41f74559198 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-10hs-test: added filenames to test namesAdrian Villin7-110/+162
- It is now possible to only run tests that are in a certain file Type: test Change-Id: I41665dd2bc0942c283be36a5af3e560fd65e9d03 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-10hs-test: HTTP download benchmarkingMatus Fabian2-18/+44
HttpTpsTest now use Gomega's gmeasure package and go internal http client. With gmeasure you can create "Experiments" which can produce reports to show the statistical distribution of measurement. Potentially experiments can also be cached and used to identify regression in performance. Type: test Change-Id: Id049fb0344d8ebed71b15e706b053b5c2a18e0de Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-06-10build: Use $(MAKE) instead of direct call to makeRenato Botelho do Couto1-5/+5
No functional changes, just make it to respect original make binary name used to start building Type: improvement Change-Id: Ic8568237fbb39c6a0d3b7405a9670e9410aeb752 Signed-off-by: Renato Botelho do Couto <renato@netgate.com>
2024-06-06hs-test: more debug output in http3 testFlorin Coras2-1/+2
Type: test Change-Id: I4d2b949f5ef5446c04ca6f35b0bd659ce389170f Signed-off-by: Florin Coras <fcoras@cisco.com>
2024-06-05hs-test: keep ab/wrk containers alive until teardownAdrian Villin2-1/+3
- Fixes errors while obtaining container logs on test failure (NginxPerf tests), ab/wrk containers are now stopped on test teardown like other containers. Type: test Change-Id: Ic336fcd3ed6bf68dd345d378262cb28eb5efc789 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-04hs-test: fix coverage integrationAdrian Villin1-3/+6
- fixed 'make test-cov' not generating gcda files Type: test Change-Id: I9745c6501a97248ab343a5dbb39dddcc75f715fd Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-06-03hs-test: add libunwind dependency to nginx dockerfileAdrian Villin3-7/+2
- Libunwind was missing in Dockerfile.nginx, causing some tests to fail. Tests that were temporarily disabled because of that issue are now re-enabled. Type: test Change-Id: I3f544be483784e8a7a1f22737cafca615b9f836b Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-31hs-test: temp skip some testsAdrian Villin2-1/+6
- Some tests are broken in the CI, skipping them for now Type: test Change-Id: I3d4efeee63b819956e5ffa1b3920e81962a2fcc9 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-31hs-test: container logging improvementsAdrian Villin3-19/+18
- Reduced the amount of error messages while obtaining container logs when a test fails by keeping track of started containers. NginxPerf tests still have those error messages, because wrk/ab containers shut themselves down before the test ends. Type: test Change-Id: I40a193345e5b46aec1834774f23aebc822eee885 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-31hs-test: add libunwind dependency to vpp dockerfileDave Wallace1-1/+1
- missing from https://gerrit.fd.io/r/c/vpp/+/40929 due to hst not running in CI yet. Type: fix Change-Id: Ib5d9b877725624ef7de9f2be5e517609aec7c5a1 Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
2024-05-30hs-test: added targets to makefiles to get coverage from HS testsadrianvillin2-0/+25
Type: make Change-Id: Iae7998692890264dfeea98c165617d0efa024d42 Signed-off-by: adrianvillin <avillin@cisco.com>
2024-05-30hs-test: set longer timeouts while debuggingAdrian Villin7-15/+24
Type: test Change-Id: I87baba7efa36dd40f086523b35bc6d3b0a26a1b5 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-30hs-test: pin CPUs to containersAdrian Villin8-39/+47
Type: test Change-Id: I412be2dec7ff352740e50e838e0ac466bf0a6674 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-28http_static: sanitize path before file readMatus Fabian2-26/+47
Romove dot segments from requested target path before start reading file in file handler to prevent path traversal. Type: fix Change-Id: I3bdd3e9d7fffd33c9c8c608169c1dc73423b7078 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-23hs-test: fix CPU alloc when running in parallelAdrian Villin7-28/+42
Type: test Change-Id: I6062eddffb938880d9ec004c8418a9a731891989 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-17hs-test: fixed timed out tests passing in the CIAdrian Villin3-33/+36
Type: test Change-Id: Id05ea56bc5dfd80d42b8600cf11e763e25420bd0 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-17http: ignore http_proxy env in testsMatus Fabian1-4/+19
Type: test Change-Id: I45a091a43e7ecb3f321fc9ecc761df2b44c9c351 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-17hs-test: updated api callsAdrian Villin5-47/+106
Type: test Change-Id: I2583ee74426ef154d03d4991b78ab57c5cec436f Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-14http: notify client when connection failedMatus Fabian1-1/+15
Type: fix Change-Id: I87054e9667fe990d9a2dc3950bc3ce348460018a Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-14http: fix server sending all status codesMatus Fabian2-9/+72
Type: fix Change-Id: I4bc748e3091c2fbe0142d1b74d21a543a62c4ce0 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-10hs-test: logging improvementsAdrian Villin12-31/+123
Type: test Change-Id: Iffefe085e846b6ba614b0d74c4ba9907080a9a59 Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-05-09hs-test: add make test-debug targetMatus Fabian1-0/+10
Run tests on vpp debug build. Type: test Change-Id: I51e6f4ac9449c1c5b7eb649af91347188f9227e1 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-03http: fix http server in responseMatus Fabian3-3/+18
App name is used in HTTP response Server header. Type: fix Change-Id: Ie3b2d985dd7d554a0352f7e602891f878bebd031 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-01http: fix client receiving large dataFilip Tehlar1-1/+1
HTTP client was relying on synchronous rx notifications to the client app when moving lage data from underlying transport proto. Recent change in session layer made such notifications asynchronous making http client not working. This patch fixes the issue. Type: fix Change-Id: I4b24c6185a594a0fe8d5d87c149c53d3b40d7110 Signed-off-by: Filip Tehlar <ftehlar@cisco.com> Signed-off-by: Matus Fabian <matfabia@cisco.com>
2024-05-01hs-test: disable color outputAdrian Villin1-1/+1
Jenkins cannot display colors in console output Type: fix Change-Id: I5365dec471d773dae1f139c5fabd0711298f8bea Signed-off-by: Adrian Villin <avillin@cisco.com>
2024-04-29hs-test: fix cpu allocatorMatus Fabian1-2/+23
Effective CPUs file is different between cgroups v1 and v2. Type: test Change-Id: Ic1b9059435b3f0944624120f57e72da45adca223 Signed-off-by: Matus Fabian <matfabia@cisco.com>