* xDS Federation: bootstrap and xds_resolver changes
* code review fixes
* fixing code review comments
* fixing code review comments
* fixing code review comments
* code review comments
* fixing code review comments
* First very basic test to make sure parsing and reconstruction work as
expected.
* clean up
* fixing logic error about authority
* fixing resource type parsing
* fixing code review comments
* simplify parsing!
* Parsing method signature update
* fixing code review comments
* clean up
* working progress for the test with generated bootstrap
* reorg the bootstrap file
* fixing tests
* Adding more to test authorities
* Added a test and it passes
* addressing code review comments
* code review comments to make parser cleaner and more efficient
* Merge in authority prefixes
* fixing sanity error and xds boostrap test error
* small fix
* Release all tests that pass; reduce scope for DeadUpdate
* Updated test strcuture and how to pass in the index for balancers to be
used as xds server uri and authority xds server uri
* code review comments
* code review fixes
* code review comment
* Making test structure changes
* fixing code review comments
* fixing code review comments
* Fixing test regression
* fixing bootstrap tests
* cleanup files
* enabling localhost:xxx for xds server; updated server tests and will fix
one more NameExpected test with testsetup.
* Finally removing fake reolsver for xds server
* Fixing bootstrap tests
* Rewrite builder
* Fixing code review comments
* fixing code review comments
* Fixing all tests to use Setup again
* fixing small sanity error
* Found the source of xds server nack test faiure and fix added
* small code review fixes
* Remove fake resolver! YAY!
* Fixing according to code review comments
* Setup plugin in bootfile
* Added more tests.
* Adding server test
* fixing a regression
* regression
* sanity fix
* fixing code review
* fixing code review comments
* Re-combine SecurityNaming tests.
* Add Rds new resource type and new tests
* Added PercentEncode test
* fixing code review comments
* refactor test a bit more
* fixing code review comments
* fixing according to code review comments
* fixing code review comments
* fixing code review comments
* modify api fuzzer code to disallow specification of grpc-timout metadata on the server side
* reverting changes to api_fuzzer and changing call.cc to drop grpc-timeout metadata on the server side
* tidying up code
The original pipe implementation made a few assumptions:
* it should be used outside of arenas, implying allocation was expensive
* pipes would be fairly deep
With our expected implementation of the filter stack, pipes will max out at one to three stages, and so optimizations enabled by Filter seem to be actual pessimizations for our usual case.
Additionally we'll be operating inside of arenas and consequently memory allocation can be trivially cheap - and in doing so we can enable a far simpler implementation.
Co-authored-by: ctiller <ctiller@users.noreply.github.com>
* Revert "Revert "Replace work serializer with a mutex in c-ares resolver (#27858)" (#28324)"
This reverts commit b972b76816.
* Fix synchronization of grpc_ares_resolver_address
* Revert "Temporarily remove binder fuzzers it fails to build with old llvm (#27599)"
This reverts commit 6b922f871f.
* Migrate to protobuf based structured fuzzing
* Fix crash happening due to recent change
* Revert "Revert "XdsClient: remove resource-type-specific methods from XdsClient API (#28231)" (#28301)"
This reverts commit 3e779b68fe.
* remove global resource type registry
* Add python3 to list of acceptable pythons in python wrapper
* Attempt to make fake server python3 compatible
* py3 fixes for test server
* more py3 fixes for test server
* require python3 for test/core/http/test_server.py
Co-authored-by: Alexander Polcyn <apolcyn@google.com>
* WIP
* introduce XdsResourceType API and change Listener parsing to use it
* converted RouteConfig parsing
* convert cluster and endpoint parsing
* cleanup
* clang-format
* attempt to work around compiler problems
* move XdsResourceType to its own file, and move endpoint code out of XdsApi
* move cluster parsing to its own file
* move route config parsing to its own file
* move listener parsing to its own file
* clang-format
* minor cleanup
* plumbed XdsResourceType throughout XdsClient
* a bit of cleanup
* more cleanup
* construct full resource names before calling XdsApi::CreateAdsRequest()
* remove some unneeded code
* clean up includes and have XdsResourceType initialize the upb symtab
* more cleanup of unnecessary code
* more cleanup
* update comment
* clang-format
* add missing virtual dtor
* fix build
* remove resource-type-specific methods from XdsClient API
* have each resource type register itself upon instantiation
* remove comment
* add missing virtual dtor
* clang-format