Add support for a callback provider that allows the server to connect multiple RPC servers to process the test run.
The goal of this is to better handle the client->server->workerNode configurations and allows the workerNode to send callbacks to the client directly. For instance, the main server might decide to load balance a run across multiple workerNodes with retries or create a workerNode under different environments like docker/WSL. With the testing.callbackProvider capability, the process inside of WSL can directly communicate back with the client and does not need to route all of the callbacks back through the main test runner process.
All of the client->server requests are still sent to the server node and not to the workerNodes, as the client has no knowledge of how the requests should be distributed/routed in the presence of such worker nodes.
Add support for a callback provider that allows the server to connect multiple RPC servers to process the test run.
The goal of this is to better handle the
client->server->workerNode
configurations and allows the workerNode to send callbacks to the client directly. For instance, the main server might decide to load balance a run across multiple workerNodes with retries or create a workerNode under different environments like docker/WSL. With thetesting.callbackProvider
capability, the process inside of WSL can directly communicate back with the client and does not need to route all of the callbacks back through the main test runner process.All of the
client->server
requests are still sent to the server node and not to the workerNodes, as the client has no knowledge of how the requests should be distributed/routed in the presence of such worker nodes.