* xds/testing: print timestamp of commands in xds tests cripts to help debug timeout failures
There were recently many kokoro timeout, after job running for 6 hours.
In those, the run_xds_tests.py only ran less then 2 hours.
There was no enough timestamp to find what was taking so long (either
run_xds_tests.py is stuck, or something before it took too long). This
should add more timestamps to help debug.
* print script start time
* format
* Poll type for promises library
* Library to talk about things that look like promises if you squint
* Library to talk about things that make promises
* build
* Changes to sync required for promise activities
* sanitized
* remove bad comment
* possible windows fix?
* fix
* ugh
* comment fix
* fix build
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
* Poll type for promises library
* Library to talk about things that look like promises if you squint
* Promise helpers, and basic type erasure
* build
* Changes to sync required for promise activities
* sanitized
* Automated change: Fix sanity tests
* suppressions
* try to fix windows failure
* Automated change: Fix sanity tests
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
* Limit initial window size increases/decreases by flow control windows of active streams
* Limit stream flow control window updates to maximum allowable
* Reviewer comments
* Alternative way
* Clean-up
* Add tests
* Remove unnecessary cq_verifier
* Generate projects
* Initialize recv_message
* Get around compilation issue
* Test size large
* xds/interop: turn on validate-for-proxyless for urlmap tests
It was turned off because retry and affinity configs were not allowed
for proxyless gRPC.
* REVERT THIS, regenerate resources
* Revert "REVERT THIS, regenerate resources"
This reverts commit a26e2916ef.
* Fix several minor issues with url-map k8s tests
* Revert changes about backend service
* Fix a k8s flag name
* Update tools/run_tests/xds_k8s_test_driver/config/local-dev.cfg.example
Co-authored-by: Sergii Tkachenko <hi@sergii.org>
Co-authored-by: Sergii Tkachenko <hi@sergii.org>
* wip: port non-security tests to k8s
* port forwarding offset
* combine and log health status changes
* split tests
* add remove_neg method
* implement assertRpcsEventuallyGoToGivenServers
* remove neg and change backend
* make maxRatePerEndpoint configurable
* _test suffix
* "rebase" onto master
* yapf and isort
* add to grpc_xds_k8s.sh
* undo change to run_test_server.py
* fix (avoid?) cleanup error with reuse_namespace=True when run with force_cleanup flag
otherwise cleaning up the secondary KubernetesServerRunner tries to
delete the namespace as well (since force overrides the reuse_namespace
flag in
https://github.com/grpc/grpc/blob/master/tools/run_tests/xds_k8s_test_driver/framework/test_app/base_runner.py#L76)
I'm not sure of the intended semantics of reuse_namespace and force, so
unclear if that conditional in base_runner.py should be changed to allow
the calls to cleanup the secondary KubernetesServerRunners continue to
forward the values of the cleanup/force_cleanup flags
* fix dates
* Add support for secondary kube context for failover test
* Revert "Add support for secondary kube context for failover test"
This reverts commit b7455f2a92.
* Revert "add to grpc_xds_k8s.sh"
This reverts commit 737f13fdc8.
* Fix potential_service_ports uninitialized variable error
When args.use_existing_gcp_resources is true(some of our testing environments set this), potential_service_ports is never set, which breaks some tests like test_api_listener
* Fix potentiel undefined variable error
* Bump Envoy and related submodules to latest
* Update googleapis
* Update scripts for newer submodules
* Update udpa
* Add opentelemetry
* Python changes for opentelemetry
* Update udpa in check_submodules
* Add opentelemetry to check submodules
* Regenerate upb files
* Add new proto dependency to upb-gen and Bazel
* Regenerate project
Otherwise, unless force_cleanup is set to true, the HTTP target proxy
deletion fails but still unsets the target_proxy field, resulting in the
gRPC target proxy deletion being skipped (and preventing all subsequent
cleanup operations)
* Add xds retry interop test to GKE test framework
* s/Affinity/Retry/
* more informative test name
* enable retry
* update java test server
* add missing import
* Add isort_code.sh to sanity tests
* Run tools/distrib/isort_code.sh
* Fine tune the import order for relative imports
* Make pylint and project generation happy
* Fix a few corner cases
* Use --check instead of --diff
* The import order impacts test result somehow
* Make isort print diff and check output at the same time
* Let tools/run_tests/python_utils be firstparty library
* Run isort against latest HEAD
A simple bitset type -- to replace `std::bitset` usage in #26698 and #26254
`std::bitset` uses at least 64 bits even to store two bits, and the usages I'm looking at would benefit from having something smaller in those circumstances
* Remove Python 2.7 binary wheels
* Make sure pip won't pick-up newer versions
* Attempt to fix the distribtest
* Fallback to virtualenv==16.7.9 for 34 and 35
* Remove 34 from binary wheel distribtests
* affinity test
- most basic affinity test
- verify that the received RDS and CDS are correctly configured for affinity
- verify that all RPCs are only sent to the one backend
- verify that only one sub-channel is connected, the other 2 are IDLE
And infra changes:
- add argument to set affinity config when creating backend service
- add a new backend service "affinity" to be shared by all affinity test
- this backend service is configured to do header affinity
- it has 3 endpoints
- replica support copied from PR https://github.com/grpc/grpc/pull/26360
- update backend services from GRPC to HTTP2, to disable validate-for-proxyless
- this will be reverted later
- add channelz function to query subchannels
- add method to configure the initial RPC config (RPC types and RPC metadata) when creating the client
- set env var to enable RING_HASH support
* c1
* REVERT THIS: update strategy to trigger a manual build
* config: suffix to prefix
* Revert "REVERT THIS: update strategy to trigger a manual build"
This reverts commit 830776fef9.
* Add folder for bindertransport and its smoke test
We will import the sources in the next few pull requests. Main purpose
of this commit is to create the folder and add dummy smoke test to make
sure nothing breaks
* regenerate projects.
* match/overload abstraction
* update projects
* match should really not accept mutable args
* typo
* tests
* usage comment
* mutable version
* build stuff
* clang-format
* add an escape hatch to avoid needing port_platform.h in files that do not need port_platform.h
* unused args
* Make it possible for a test to not depend on gpr
* add tests
* compile fix
* sepelling