reverse_tunnels: integration tests #42811
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Commit Message: This PR adds basic integration tests for the reverse tunnels functionality.
Additional Description:
This PR adds integration tests for the reverse tunnel functionality:
EndToEndReverseTunnelTest - Tests basic reverse tunnel setup with a single node establishing a connection to a cloud listener, followed by sending HTTP requests through the egress listener that route through the reverse tunnel to a backend service. Validates the complete request/response flow and verifies tunnel statistics.
EndToEndReverseTunnelTestWithMutualTLS - Similar to the basic end-to-end test but with mutual TLS (mTLS) between the initiator and responder.
ReverseTunnelResiliencyTest - Tests reverse tunnel resilience in a multi-node, multi-cloud scenario. Sets up 2 edge nodes (node-1, node-2) with connections to 2 cloud instances (cloud_1, cloud_2) using LDS. Simulates node-1 failure by removing its initiator listeners via LDS, verifies that node-2 continues to function while node-1 requests fail, then re-adds node-1's listeners and confirms that tunnels are re-established and both nodes become operational again.
Risk Level: Low - Tests only
Testing: New integration tests added
Docs Changes: N/A
Release Notes: N/A
Platform Specific Features: N/A