Bug 1889272 - Golang test server – new functionality
Summary: Golang test server – new functionality
Status: ON_DEV
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: python-octavia-tests-tempest
Version: 16.1 (Train)
Hardware: Unspecified
OS: Unspecified
Target Milestone: beta
: 16.2 (Train on RHEL 8.4)
Assignee: Gregory Thiemonge
QA Contact: Bruna Bonguardo
Depends On:
TreeView+ depends on / blocked
Reported: 2020-10-19 08:44 UTC by Arkady Shtempler
Modified: 2020-10-26 10:42 UTC (History)
5 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed:
Target Upstream Version:

Attachments (Terms of Use)

Description Arkady Shtempler 2020-10-19 08:44:22 UTC
Octavia tempest plugin tests are using server side server/stub implemented with Go) [1]
In order to be able to add more Octavia automated tests we need to add some new functionality into this server.
For example in order to test  “--insert-headers” (it’s possible that the LB will be configured to add HTTP headers into the client’s requests) we need and option to get HTTP headers received on the server side.
For example we could add the following logic, when the server app is receiving HTTP request with URL query like “send_back_requests_headers=True” it will automatically add all received HTTP request headers into the body of response. (payload).

[1] - https://github.com/openstack/octavia-tempest-plugin/tree/master/octavia_tempest_plugin/contrib/test_server

URL query string parameters to support:
1) respond_with_request_headers - server should send back all received GET request header in response body.
2) delay_response - delay the response with a value set as parameter (to simulate busy server, hatcheck response id delayed)
3) response_with_status_code - response with the status code set as parameter 

Path to support:
1) test_server.bin 
In order to automate LB scenario with Neutron QoS activated, we can use a binary file itself.
We can measure limited BW by downloading this binary file that is already existing on Cirros members.

Note You need to log in before you can comment on or make changes to this bug.